pull/6/head
Qstick 3 years ago
parent eb9b14ba24
commit 5b24fdbc20

@ -1,4 +1,4 @@
using System;
using System;
using System.Threading;
using OpenQA.Selenium;
using OpenQA.Selenium.Remote;
@ -47,11 +47,7 @@ namespace NzbDrone.Automation.Test.PageModel
});
}
public IWebElement MovieNavIcon => Find(By.LinkText("Movies"));
public IWebElement CalendarNavIcon => Find(By.LinkText("Calendar"));
public IWebElement ActivityNavIcon => Find(By.LinkText("Activity"));
public IWebElement MovieNavIcon => Find(By.LinkText("Indexers"));
public IWebElement SettingNavIcon => Find(By.LinkText("Settings"));

@ -10,7 +10,7 @@ namespace NzbDrone.Common.Test.EnvironmentInfo
[Test]
public void should_return_version()
{
BuildInfo.Version.Major.Should().BeOneOf(3, 10);
BuildInfo.Version.Major.Should().BeOneOf(0, 1, 10);
}
[Test]

@ -235,14 +235,14 @@ namespace NzbDrone.Common.Test.Http
}
var request = new HttpRequestBuilder($"https://{_httpBinHost}/redirect-to")
.AddQueryParam("url", $"https://prowlarr.video/")
.AddQueryParam("url", $"https://radarr.video/")
.Build();
request.AllowAutoRedirect = true;
var response = Subject.Get(request);
response.StatusCode.Should().Be(HttpStatusCode.OK);
response.Content.Should().Contain("Prowlarr");
response.Content.Should().Contain("Radarr");
ExceptionVerification.ExpectedErrors(0);
}
@ -288,7 +288,7 @@ namespace NzbDrone.Common.Test.Http
{
var file = GetTempFilePath();
var url = "https://prowlarr.video/img/slider/moviedetails.png";
var url = "https://radarr.video/img/slider/moviedetails.png";
Subject.DownloadFile(url, file);
@ -303,7 +303,7 @@ namespace NzbDrone.Common.Test.Http
var file = GetTempFilePath();
var request = new HttpRequestBuilder($"https://{_httpBinHost}/redirect-to")
.AddQueryParam("url", $"https://prowlarr.video/img/slider/moviedetails.png")
.AddQueryParam("url", $"https://radarr.video/img/slider/moviedetails.png")
.Build();
Subject.DownloadFile(request.Url.FullUri, file);

@ -1,4 +1,4 @@
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using FizzWare.NBuilder;
@ -18,6 +18,12 @@ namespace NzbDrone.Core.Test.Datastore
[SetUp]
public void Setup()
{
AssertionOptions.AssertEquivalencyUsing(options =>
{
options.Using<DateTime>(ctx => ctx.Subject.Should().BeCloseTo(ctx.Expectation.ToUniversalTime())).WhenTypeIs<DateTime>();
return options;
});
_basicList = Builder<ScheduledTask>
.CreateListOfSize(5)
.All()

@ -34,7 +34,7 @@ namespace NzbDrone.Core.Test.IndexerTests.FileListTests
.Setup(o => o.Execute(It.Is<HttpRequest>(v => v.Method == HttpMethod.GET)))
.Returns<HttpRequest>(r => new HttpResponse(r, new HttpHeader(), recentFeed));
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(4);
releases.First().Should().BeOfType<TorrentInfo>();

@ -24,7 +24,8 @@ namespace NzbDrone.Core.Test.IndexerTests.FileListTests
_movieSearchCriteria = new MovieSearchCriteria
{
SearchTerm = "Star Wars"
SearchTerm = "Star Wars",
Categories = new int[] { 2000 }
};
}
@ -36,7 +37,7 @@ namespace NzbDrone.Core.Test.IndexerTests.FileListTests
[Test]
public void should_use_categories_for_feed()
{
var results = Subject.GetSearchRequests(new MovieSearchCriteria());
var results = Subject.GetSearchRequests(new MovieSearchCriteria { Categories = new int[] { 1, 2 } });
results.GetAllTiers().Should().HaveCount(1);
@ -48,6 +49,7 @@ namespace NzbDrone.Core.Test.IndexerTests.FileListTests
[Test]
public void should_not_search_by_imdbid_if_not_supported()
{
_movieSearchCriteria.ImdbId = "tt0076759";
var results = Subject.GetSearchRequests(_movieSearchCriteria);
results.GetAllTiers().Should().HaveCount(1);
@ -70,7 +72,7 @@ namespace NzbDrone.Core.Test.IndexerTests.FileListTests
var page = results.GetAllTiers().First().First();
page.Url.Query.Should().Contain("type=name");
page.Url.Query.Should().Contain("query=Star+Wars+1977");
page.Url.Query.Should().Contain("query=Star Wars");
}
}
}

@ -18,6 +18,8 @@ namespace NzbDrone.Core.Test.IndexerTests.HDBitsTests
[TestFixture]
public class HDBitsFixture : CoreTest<HDBits>
{
private MovieSearchCriteria _movieSearchCriteria;
[SetUp]
public void Setup()
{
@ -26,6 +28,12 @@ namespace NzbDrone.Core.Test.IndexerTests.HDBitsTests
Name = "HdBits",
Settings = new HDBitsSettings() { ApiKey = "fakekey" }
};
_movieSearchCriteria = new MovieSearchCriteria
{
Categories = new int[] { 2000, 2010 },
ImdbId = "tt0076759"
};
}
[TestCase("Files/Indexers/HdBits/RecentFeedLongIDs.json")]
@ -38,7 +46,7 @@ namespace NzbDrone.Core.Test.IndexerTests.HDBitsTests
.Setup(o => o.Execute(It.Is<HttpRequest>(v => v.Method == HttpMethod.POST)))
.Returns<HttpRequest>(r => new HttpResponse(r, new HttpHeader(), responseJson));
var torrents = Subject.Fetch(new MovieSearchCriteria());
var torrents = Subject.Fetch(_movieSearchCriteria);
torrents.Should().HaveCount(2);
torrents.First().Should().BeOfType<HDBitsInfo>();
@ -67,7 +75,7 @@ namespace NzbDrone.Core.Test.IndexerTests.HDBitsTests
.Setup(v => v.Execute(It.IsAny<HttpRequest>()))
.Returns<HttpRequest>(r => new HttpResponse(r, new HttpHeader(), Encoding.UTF8.GetBytes(responseJson)));
var torrents = Subject.Fetch(new MovieSearchCriteria());
var torrents = Subject.Fetch(_movieSearchCriteria);
torrents.Should().BeEmpty();

@ -25,6 +25,8 @@ namespace NzbDrone.Core.Test.IndexerTests.HDBitsTests
_movieSearchCriteria = new MovieSearchCriteria
{
Categories = new int[] { 2000, 2010 },
ImdbId = "tt0076759"
};
}

@ -92,7 +92,7 @@ namespace NzbDrone.Core.Test.IndexerTests.IPTorrentsTests
.Setup(o => o.Execute(It.Is<HttpRequest>(v => v.Method == HttpMethod.GET)))
.Returns<HttpRequest>(r => new HttpResponse(r, new HttpHeader(), recentFeed));
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(5);
releases.First().Should().BeOfType<TorrentInfo>();

@ -44,7 +44,7 @@ namespace NzbDrone.Core.Test.IndexerTests.NewznabTests
.Setup(o => o.Execute(It.Is<HttpRequest>(v => v.Method == HttpMethod.GET)))
.Returns<HttpRequest>(r => new HttpResponse(r, new HttpHeader(), recentFeed));
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 }, Limit = 100, Offset = 0 });
releases.Should().HaveCount(100);

@ -26,7 +26,8 @@ namespace NzbDrone.Core.Test.IndexerTests.NewznabTests
_movieSearchCriteria = new MovieSearchCriteria
{
SearchTerm = "Star Wars"
SearchTerm = "Star Wars",
Categories = new int[] { 2000 }
};
_capabilities = new IndexerCapabilities();
@ -39,15 +40,14 @@ namespace NzbDrone.Core.Test.IndexerTests.NewznabTests
[Test]
public void should_return_subsequent_pages()
{
_movieSearchCriteria.Offset = 0;
var results = Subject.GetSearchRequests(_movieSearchCriteria);
results.GetAllTiers().Should().HaveCount(2);
results.GetAllTiers().Should().HaveCount(1);
var pages = results.GetAllTiers().First().Take(3).ToList();
pages[0].Url.FullUri.Should().Contain("&offset=0&");
pages[1].Url.FullUri.Should().Contain("&offset=100&");
pages[2].Url.FullUri.Should().Contain("&offset=200&");
pages[0].Url.FullUri.Should().Contain("&offset=0");
}
[Test]
@ -55,7 +55,7 @@ namespace NzbDrone.Core.Test.IndexerTests.NewznabTests
{
var results = Subject.GetSearchRequests(_movieSearchCriteria);
results.GetAllTiers().Should().HaveCount(2);
results.GetAllTiers().Should().HaveCount(1);
var pages = results.GetAllTiers().First().Take(500).ToList();
@ -80,6 +80,7 @@ namespace NzbDrone.Core.Test.IndexerTests.NewznabTests
[Test]
public void should_search_by_imdbid_if_supported()
{
_movieSearchCriteria.ImdbId = "0076759";
_capabilities.MovieSearchParams = new List<MovieSearchParam> { MovieSearchParam.Q, MovieSearchParam.ImdbId };
var results = Subject.GetSearchRequests(_movieSearchCriteria);
@ -93,6 +94,7 @@ namespace NzbDrone.Core.Test.IndexerTests.NewznabTests
[Test]
public void should_search_by_tmdbid_if_supported()
{
_movieSearchCriteria.TmdbId = 11;
_capabilities.MovieSearchParams = new List<MovieSearchParam> { MovieSearchParam.Q, MovieSearchParam.TmdbId };
var results = Subject.GetSearchRequests(_movieSearchCriteria);
@ -106,6 +108,7 @@ namespace NzbDrone.Core.Test.IndexerTests.NewznabTests
[Test]
public void should_prefer_search_by_tmdbid_if_rid_supported()
{
_movieSearchCriteria.TmdbId = 11;
_capabilities.MovieSearchParams = new List<MovieSearchParam> { MovieSearchParam.Q, MovieSearchParam.ImdbId, MovieSearchParam.TmdbId };
var results = Subject.GetSearchRequests(_movieSearchCriteria);
@ -120,6 +123,8 @@ namespace NzbDrone.Core.Test.IndexerTests.NewznabTests
[Test]
public void should_use_aggregrated_id_search_if_supported()
{
_movieSearchCriteria.ImdbId = "0076759";
_movieSearchCriteria.TmdbId = 11;
_capabilities.MovieSearchParams = new List<MovieSearchParam> { MovieSearchParam.Q, MovieSearchParam.ImdbId, MovieSearchParam.TmdbId };
var results = Subject.GetSearchRequests(_movieSearchCriteria);
@ -165,9 +170,9 @@ namespace NzbDrone.Core.Test.IndexerTests.NewznabTests
_capabilities.MovieSearchParams = new List<MovieSearchParam> { MovieSearchParam.Q, MovieSearchParam.ImdbId, MovieSearchParam.TmdbId };
var results = Subject.GetSearchRequests(_movieSearchCriteria);
results.Tiers.Should().Be(2);
results.Tiers.Should().Be(1);
var pageTier2 = results.GetTier(1).First().First();
var pageTier2 = results.GetTier(0).First().First();
pageTier2.Url.Query.Should().NotContain("tmdbid=11");
pageTier2.Url.Query.Should().NotContain("imdbid=0076759");

@ -39,7 +39,7 @@ namespace NzbDrone.Core.Test.IndexerTests.RarbgTests
.Setup(o => o.Execute(It.Is<HttpRequest>(v => v.Method == HttpMethod.GET)))
.Returns<HttpRequest>(r => new HttpResponse(r, new HttpHeader(), recentFeed));
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(4);
releases.First().Should().BeOfType<TorrentInfo>();
@ -66,7 +66,7 @@ namespace NzbDrone.Core.Test.IndexerTests.RarbgTests
.Setup(o => o.Execute(It.Is<HttpRequest>(v => v.Method == HttpMethod.GET)))
.Returns<HttpRequest>(r => new HttpResponse(r, new HttpHeader(), "{ error_code: 20, error: \"some message\" }"));
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(0);
}
@ -78,7 +78,7 @@ namespace NzbDrone.Core.Test.IndexerTests.RarbgTests
.Setup(o => o.Execute(It.Is<HttpRequest>(v => v.Method == HttpMethod.GET)))
.Returns<HttpRequest>(r => new HttpResponse(r, new HttpHeader(), "{ error_code: 25, error: \"some message\" }"));
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(0);

@ -45,7 +45,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
{
GivenRecentFeedResponse("TorrentRss/ImmortalSeed.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(50);
releases.First().Should().BeOfType<TorrentInfo>();
@ -71,7 +71,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
{
GivenRecentFeedResponse("TorrentRss/Ezrss.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(3);
releases.First().Should().BeOfType<TorrentInfo>();
@ -99,7 +99,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
GivenRecentFeedResponse("TorrentRss/ShowRSS.info.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(5);
releases.First().Should().BeOfType<TorrentInfo>();
@ -127,7 +127,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
GivenRecentFeedResponse("TorrentRss/Doki.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(5);
releases.First().Should().BeOfType<TorrentInfo>();
@ -153,7 +153,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
{
GivenRecentFeedResponse("TorrentRss/ExtraTorrents.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(5);
releases.First().Should().BeOfType<TorrentInfo>();
@ -179,7 +179,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
{
GivenRecentFeedResponse("TorrentRss/LimeTorrents.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(5);
releases.First().Should().BeOfType<TorrentInfo>();
@ -205,7 +205,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
{
GivenRecentFeedResponse("TorrentRss/AnimeTosho_NoSize.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(2);
releases.First().Should().BeOfType<TorrentInfo>();
@ -231,7 +231,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
{
GivenRecentFeedResponse("TorrentRss/AnimeTosho_NoSize.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(2);
releases.Last().Should().BeOfType<TorrentInfo>();
@ -248,7 +248,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
{
GivenRecentFeedResponse("TorrentRss/AlphaRatio.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(2);
releases.Last().Should().BeOfType<TorrentInfo>();
@ -266,7 +266,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
Subject.Definition.Settings.As<TorrentRssIndexerSettings>().AllowZeroSize = true;
GivenRecentFeedResponse("TorrentRss/EvolutionWorld.xml");
var releases = Subject.Fetch(new MovieSearchCriteria());
var releases = Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } });
releases.Should().HaveCount(2);
releases.First().Should().BeOfType<TorrentInfo>();
@ -292,7 +292,7 @@ namespace NzbDrone.Core.Test.IndexerTests.TorrentRssIndexerTests
{
GivenRecentFeedResponse("TorrentRss/invalid/TorrentDay_NoPubDate.xml");
Subject.Fetch(new MovieSearchCriteria()).Should().BeEmpty();
Subject.Fetch(new MovieSearchCriteria { Categories = new int[] { 2000 } }).Should().BeEmpty();
Mocker.GetMock<IIndexerStatusService>()
.Verify(v => v.RecordFailure(It.IsAny<int>(), TimeSpan.Zero), Times.Once());

@ -25,6 +25,7 @@ namespace NzbDrone.Core.Test.UpdateTests
}
[Test]
[Ignore("TODO No Updates On Server")]
[Platform(Exclude = "NetCore")]
public void finds_update_when_version_lower()
{
@ -41,6 +42,7 @@ namespace NzbDrone.Core.Test.UpdateTests
}
[Test]
[Ignore("TODO No Updates On Server")]
public void should_get_recent_updates()
{
const string branch = "develop";

@ -21,14 +21,12 @@ namespace NzbDrone.Core.Datastore.Migration
Create.TableForModel("Notifications")
.WithColumn("Name").AsString()
.WithColumn("OnGrab").AsBoolean()
.WithColumn("OnDownload").AsBoolean()
.WithColumn("Settings").AsString()
.WithColumn("Implementation").AsString()
.WithColumn("ConfigContract").AsString().Nullable()
.WithColumn("OnUpgrade").AsBoolean().Nullable()
.WithColumn("Tags").AsString().Nullable()
.WithColumn("OnRename").AsBoolean().NotNullable();
.WithColumn("OnHealthIssue").AsBoolean().NotNullable()
.WithColumn("IncludeHealthWarnings").AsBoolean().NotNullable();
Create.TableForModel("ScheduledTasks")
.WithColumn("TypeName").AsString().Unique()

@ -121,7 +121,7 @@ namespace NzbDrone.Core.IndexerVersions
}
else
{
//Do some things here to get it from server if we don't have it local
return GetHttpDefinition(fileKey);
}
throw new ArgumentOutOfRangeException(nameof(fileKey));

@ -38,6 +38,9 @@ namespace NzbDrone.Core.Indexers.HDBits
{
query.ImdbInfo = query.ImdbInfo ?? new ImdbInfo();
query.ImdbInfo.Id = imdbId;
//TODO Map Categories
query.Category = searchCriteria.Categories;
return true;
}
@ -62,7 +65,7 @@ namespace NzbDrone.Core.Indexers.HDBits
query.Passkey = Settings.ApiKey;
//TODO Add from searchCriteria
// query.Category = Settings.Categories.ToArray();
query.Category = query.Category.ToArray();
query.Codec = Settings.Codecs.ToArray();
query.Medium = Settings.Mediums.ToArray();

@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using NzbDrone.Common.Extensions;
using NzbDrone.Common.Http;
using NzbDrone.Core.IndexerSearch.Definitions;
@ -9,20 +10,18 @@ namespace NzbDrone.Core.Indexers.IPTorrents
{
public IPTorrentsSettings Settings { get; set; }
public virtual IndexerPageableRequestChain GetRecentRequests()
public IndexerPageableRequestChain GetSearchRequests(MovieSearchCriteria searchCriteria)
{
var pageableRequests = new IndexerPageableRequestChain();
pageableRequests.Add(GetRssRequests());
if (searchCriteria.SearchTerm.IsNullOrWhiteSpace())
{
pageableRequests.Add(GetRssRequests());
}
return pageableRequests;
}
public IndexerPageableRequestChain GetSearchRequests(MovieSearchCriteria searchCriteria)
{
return new IndexerPageableRequestChain();
}
private IEnumerable<IndexerRequest> GetRssRequests()
{
yield return new IndexerRequest(Settings.BaseUrl, HttpAccept.Rss);

@ -105,7 +105,7 @@ namespace NzbDrone.Core.Indexers.Newznab
{
if (int.TryParse(cat, out var intCategory))
{
var indexerCat = _settings.Categories.FirstOrDefault(c => c.Id == intCategory);
var indexerCat = _settings.Categories?.FirstOrDefault(c => c.Id == intCategory) ?? null;
if (indexerCat != null)
{

@ -10,20 +10,18 @@ namespace NzbDrone.Core.Indexers.TorrentRss
{
public TorrentRssIndexerSettings Settings { get; set; }
public virtual IndexerPageableRequestChain GetRecentRequests()
public IndexerPageableRequestChain GetSearchRequests(MovieSearchCriteria searchCriteria)
{
var pageableRequests = new IndexerPageableRequestChain();
pageableRequests.Add(GetRssRequests(null));
if (searchCriteria.SearchTerm.IsNullOrWhiteSpace())
{
pageableRequests.Add(GetRssRequests(null));
}
return pageableRequests;
}
public IndexerPageableRequestChain GetSearchRequests(MovieSearchCriteria searchCriteria)
{
return new IndexerPageableRequestChain();
}
private IEnumerable<IndexerRequest> GetRssRequests(string searchParameters)
{
var request = new IndexerRequest(Settings.BaseUrl.Trim().TrimEnd('/'), HttpAccept.Rss);

@ -40,7 +40,7 @@ namespace NzbDrone.Core.Indexers.TorrentRss
_logger.Debug("Evaluating TorrentRss feed '{0}'", indexerSettings.BaseUrl);
var requestGenerator = new TorrentRssIndexerRequestGenerator { Settings = indexerSettings };
var request = requestGenerator.GetRecentRequests().GetAllTiers().First().First();
var request = requestGenerator.GetSearchRequests(new IndexerSearch.Definitions.MovieSearchCriteria()).GetAllTiers().First().First();
HttpResponse httpResponse = null;
try

@ -42,11 +42,10 @@ namespace NzbDrone.Core.Indexers
public override IList<ReleaseInfo> Fetch(MovieSearchCriteria searchCriteria)
{
if (!SupportsSearch)
{
return new List<ReleaseInfo>();
}
//if (!SupportsSearch)
//{
// return new List<ReleaseInfo>();
//}
return FetchReleases(g => g.GetSearchRequests(searchCriteria));
}

@ -92,6 +92,8 @@ namespace NzbDrone.Core.Indexers
MusicSearchParams = new List<MusicSearchParam>();
BookSearchParams = new List<BookSearchParam>();
Categories = new IndexerCapabilitiesCategories();
LimitsDefault = 100;
LimitsMax = 100;
}
public void ParseCardigannSearchModes(Dictionary<string, List<string>> modes)

@ -251,7 +251,7 @@ namespace NzbDrone.Core.Indexers
if (definition.Implementation == typeof(Newznab.Newznab).Name)
{
var settings = (NewznabSettings)definition.Settings;
settings.Categories = _newznabCapabilitiesProvider.GetCapabilities(settings).Categories.GetTorznabCategoryList();
settings.Categories = _newznabCapabilitiesProvider.GetCapabilities(settings)?.Categories.GetTorznabCategoryList() ?? null;
}
return base.Create(definition);

@ -1,4 +1,4 @@
using FluentAssertions;
using FluentAssertions;
using NUnit.Framework;
using NzbDrone.Integration.Test.Client;
@ -8,9 +8,9 @@ namespace NzbDrone.Integration.Test.ApiTests
public class CommandFixture : IntegrationTest
{
[Test]
public void should_be_able_to_run_rss_sync()
public void should_be_able_to_run_update_check()
{
var response = Commands.Post(new SimpleCommandResource { Name = "rsssync" });
var response = Commands.Post(new SimpleCommandResource { Name = "applicationcheckupdate" });
response.Id.Should().NotBe(0);
}

@ -1,4 +1,4 @@
using System.Collections.Generic;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
@ -100,25 +100,5 @@ namespace NzbDrone.Integration.Test.ApiTests
result.Type.Should().Be(FileSystemEntityType.Folder);
}
[Test]
public void get_all_mediafiles()
{
var tempDir = GetTempDirectory("mediaDir");
File.WriteAllText(Path.Combine(tempDir, "somevideo.mkv"), "video");
var request = FileSystem.BuildRequest("mediafiles");
request.Method = Method.GET;
request.AddQueryParameter("path", tempDir);
var result = FileSystem.Execute<List<Dictionary<string, string>>>(request, HttpStatusCode.OK);
result.Should().HaveCount(1);
result.First().Should().ContainKey("path");
result.First().Should().ContainKey("relativePath");
result.First().Should().ContainKey("name");
result.First()["name"].Should().Be("somevideo.mkv");
}
}
}

@ -1,4 +1,4 @@
using System;
using System;
using System.Linq;
using FluentAssertions;
using NUnit.Framework;
@ -30,10 +30,10 @@ namespace NzbDrone.Integration.Test.ApiTests
{
var schema = Notifications.Schema();
var xbmc = schema.Single(s => s.Implementation.Equals("Xbmc", StringComparison.InvariantCultureIgnoreCase));
var xbmc = schema.Single(s => s.Implementation.Equals("Webhook", StringComparison.InvariantCultureIgnoreCase));
xbmc.Name = "Test XBMC";
xbmc.Fields.Single(f => f.Name.Equals("host")).Value = "localhost";
xbmc.Name = "Test Webhook";
xbmc.Fields.Single(f => f.Name.Equals("url")).Value = "localhost";
var result = Notifications.Post(xbmc);
Notifications.Delete(result.Id);

@ -8,7 +8,7 @@ namespace NzbDrone.Integration.Test
[TestFixture]
public class CorsFixture : IntegrationTest
{
private RestRequest BuildGet(string route = "movie")
private RestRequest BuildGet(string route = "indexer")
{
var request = new RestRequest(route, Method.GET);
request.AddHeader(AccessControlHeaders.RequestMethod, "POST");
@ -16,7 +16,7 @@ namespace NzbDrone.Integration.Test
return request;
}
private RestRequest BuildOptions(string route = "movie")
private RestRequest BuildOptions(string route = "indexer")
{
var request = new RestRequest(route, Method.OPTIONS);

@ -1,7 +1,7 @@
using System.Threading;
using NLog;
using NUnit.Framework;
using NzbDrone.Core.Indexers.Newznab;
using NzbDrone.Core.Indexers.FileList;
using NzbDrone.Test.Common;
using Prowlarr.Http.ClientSchema;
@ -39,11 +39,11 @@ namespace NzbDrone.Integration.Test
EnableRss = false,
EnableInteractiveSearch = false,
EnableAutomaticSearch = false,
ConfigContract = nameof(NewznabSettings),
Implementation = nameof(Newznab),
ConfigContract = nameof(FileListSettings),
Implementation = nameof(FileList),
Name = "NewznabTest",
Protocol = Core.Indexers.DownloadProtocol.Usenet,
Fields = SchemaBuilder.ToSchema(new NewznabSettings())
Fields = SchemaBuilder.ToSchema(new FileListSettings())
});
// Change Console Log Level to Debug so we get more details.

Loading…
Cancel
Save