mirror of
https://github.com/Sonarr/Sonarr
synced 2024-12-25 01:06:30 +00:00
limited newzbin search to English only.
This commit is contained in:
parent
555e62fd17
commit
cd96d546e8
2 changed files with 20 additions and 15 deletions
|
@ -21,7 +21,7 @@ namespace NzbDrone.Core.Test
|
|||
// ReSharper disable InconsistentNaming
|
||||
public class IndexerTests : TestBase
|
||||
{
|
||||
|
||||
|
||||
[TestCase("nzbsorg.xml", 0)]
|
||||
[TestCase("nzbsrus.xml", 6)]
|
||||
[TestCase("newzbin.xml", 1)]
|
||||
|
@ -60,16 +60,20 @@ namespace NzbDrone.Core.Test
|
|||
public void newzbin_rss_fetch()
|
||||
{
|
||||
var mocker = new AutoMoqer();
|
||||
|
||||
mocker.GetMock<HttpProvider>()
|
||||
.Setup(h => h.DownloadStream(It.IsAny<String>(), It.IsAny<NetworkCredential>()))
|
||||
.Returns(File.OpenRead(".\\Files\\Rss\\newzbin.xml"));
|
||||
|
||||
mocker.Resolve<HttpProvider>();
|
||||
var fakeSettings = Builder<IndexerSetting>.CreateNew().Build();
|
||||
mocker.GetMock<IndexerProvider>()
|
||||
.Setup(c => c.GetSettings(It.IsAny<Type>()))
|
||||
.Returns(fakeSettings);
|
||||
|
||||
mocker.GetMock<ConfigProvider>()
|
||||
.SetupGet(c => c.NewzbinUsername)
|
||||
.Returns("nzbdrone");
|
||||
|
||||
mocker.GetMock<ConfigProvider>()
|
||||
.SetupGet(c => c.NewzbinPassword)
|
||||
.Returns("smartar39865");
|
||||
|
||||
var newzbinProvider = mocker.Resolve<Newzbin>();
|
||||
var parseResults = newzbinProvider.FetchRss();
|
||||
|
||||
|
@ -84,11 +88,10 @@ namespace NzbDrone.Core.Test
|
|||
parseResults.Should().OnlyContain(s => s.Indexer == newzbinProvider.Name);
|
||||
parseResults.Should().OnlyContain(s => !String.IsNullOrEmpty(s.NzbTitle));
|
||||
|
||||
|
||||
ExceptionVerification.ExcpectedWarns(1);
|
||||
ExceptionVerification.IgnoreWarns();
|
||||
}
|
||||
|
||||
|
||||
|
||||
[TestCase("Adventure.Inc.S03E19.DVDRip.XviD-OSiTV", 3, 19, QualityTypes.DVD)]
|
||||
public void custome_parser_partial_success(string title, int season, int episode, QualityTypes quality)
|
||||
{
|
||||
|
@ -179,8 +182,8 @@ namespace NzbDrone.Core.Test
|
|||
result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(23));
|
||||
}
|
||||
|
||||
[TestCase("simpsons",21,23)]
|
||||
[TestCase("Hawaii Five-0", 1, 5)]
|
||||
[TestCase("simpsons", 21, 23)]
|
||||
[TestCase("Hawaii Five-0 2010", 1, 5)]
|
||||
public void newzbin_search_returns_valid_results(string title, int season, int episode)
|
||||
{
|
||||
var mocker = new AutoMoqer();
|
||||
|
@ -198,7 +201,7 @@ namespace NzbDrone.Core.Test
|
|||
var result = mocker.Resolve<Newzbin>().FetchEpisode(title, season, episode);
|
||||
|
||||
result.Should().NotBeEmpty();
|
||||
result.Should().OnlyContain(r => r.CleanTitle == title);
|
||||
result.Should().OnlyContain(r => r.CleanTitle == Parser.NormalizeTitle(title));
|
||||
result.Should().OnlyContain(r => r.SeasonNumber == season);
|
||||
result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(episode));
|
||||
}
|
||||
|
|
|
@ -10,19 +10,21 @@ namespace NzbDrone.Core.Providers.Indexer
|
|||
{
|
||||
public class Newzbin : IndexerBase
|
||||
{
|
||||
[Inject]
|
||||
[Inject]
|
||||
public Newzbin(HttpProvider httpProvider, ConfigProvider configProvider)
|
||||
: base(httpProvider, configProvider)
|
||||
{
|
||||
}
|
||||
|
||||
private const string UrlParams = "feed=rss&hauth=1&ps_rb_language=4096";
|
||||
|
||||
protected override string[] Urls
|
||||
{
|
||||
get
|
||||
{
|
||||
return new[]
|
||||
{
|
||||
"http://www.newzbin.com/browse/category/p/tv?feed=rss&hauth=1"
|
||||
"http://www.newzbin.com/browse/category/p/tv?" + UrlParams
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -38,7 +40,7 @@ namespace NzbDrone.Core.Providers.Indexer
|
|||
protected override IList<string> GetSearchUrls(string seriesTitle, int seasonNumber, int episodeNumber)
|
||||
{
|
||||
|
||||
return new List<string> { String.Format(@"http://www.newzbin.com/search/query/?q={0}+{1}x{2:00}&fpn=p&searchaction=Go&category=8&feed=rss&hauth=1", GetQueryTitle(seriesTitle), seasonNumber, episodeNumber) };
|
||||
return new List<string> { String.Format(@"http://www.newzbin.com/search/query/?q={0}+{1}x{2:00}&fpn=p&searchaction=Go&category=8&{3}", GetQueryTitle(seriesTitle), seasonNumber, episodeNumber, UrlParams) };
|
||||
}
|
||||
|
||||
public override string Name
|
||||
|
|
Loading…
Reference in a new issue