From a4e96ba31453cea135687171a7ab6bdbb55a545d Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Fri, 3 Jun 2011 07:17:53 -0700 Subject: [PATCH 1/4] Had the episodes going into the episode count tuple in the wrong order than, they were being retrieved. Oh noes. --- NzbDrone.Core/Providers/MediaFileProvider.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NzbDrone.Core/Providers/MediaFileProvider.cs b/NzbDrone.Core/Providers/MediaFileProvider.cs index 363e3029f..86957995e 100644 --- a/NzbDrone.Core/Providers/MediaFileProvider.cs +++ b/NzbDrone.Core/Providers/MediaFileProvider.cs @@ -201,7 +201,7 @@ namespace NzbDrone.Core.Providers var episodeTotal = series.Episodes.Where(e => monitoredSeasons.Contains(e.SeasonId) && e.AirDate <= DateTime.Today && e.AirDate > new DateTime(1899, 12, 31)); var episodes = episodeTotal.Where(e => e.EpisodeFileId > 0); - return new Tuple(episodeTotal.Count(), episodes.Count()); + return new Tuple(episodes.Count(), episodeTotal.Count()); } private List GetMediaFileList(string path) From 7291497ce08cbaf881089923b38709eae55a4591 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Fri, 3 Jun 2011 21:47:04 -0700 Subject: [PATCH 2/4] Added search to Yesterday in Upcoming View. --- NzbDrone.Web/Controllers/UpcomingController.cs | 1 + NzbDrone.Web/Models/UpcomingEpisodeModel.cs | 1 + 2 files changed, 2 insertions(+) diff --git a/NzbDrone.Web/Controllers/UpcomingController.cs b/NzbDrone.Web/Controllers/UpcomingController.cs index 3c9b4e826..17e5438bd 100644 --- a/NzbDrone.Web/Controllers/UpcomingController.cs +++ b/NzbDrone.Web/Controllers/UpcomingController.cs @@ -30,6 +30,7 @@ namespace NzbDrone.Web.Controllers var upcoming = _upcomingEpisodesProvider.Yesterday().Select(e => new UpcomingEpisodeModel { SeriesId = e.Series.SeriesId, + EpisodeId = e.EpisodeId, SeriesName = e.Series.Title, SeasonNumber = e.SeasonNumber, EpisodeNumber = e.EpisodeNumber, diff --git a/NzbDrone.Web/Models/UpcomingEpisodeModel.cs b/NzbDrone.Web/Models/UpcomingEpisodeModel.cs index 7138dff9f..9fc69921d 100644 --- a/NzbDrone.Web/Models/UpcomingEpisodeModel.cs +++ b/NzbDrone.Web/Models/UpcomingEpisodeModel.cs @@ -5,6 +5,7 @@ namespace NzbDrone.Web.Models public class UpcomingEpisodeModel { public int SeriesId { get; set; } + public int EpisodeId { get; set; } public string SeriesName { get; set; } public int SeasonNumber { get; set; } public int EpisodeNumber { get; set; } From 5e02ab972c344523a7b1d882f87941e221790304 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Fri, 3 Jun 2011 22:32:55 -0700 Subject: [PATCH 3/4] Added NzbMatrix Search Url, with tests. --- NzbDrone.Core.Test/IndexerTests.cs | 53 +++++++++++++++++--- NzbDrone.Core/Providers/Indexer/NzbMatrix.cs | 9 +++- 2 files changed, 53 insertions(+), 9 deletions(-) diff --git a/NzbDrone.Core.Test/IndexerTests.cs b/NzbDrone.Core.Test/IndexerTests.cs index 0c74fe042..50ac36d16 100644 --- a/NzbDrone.Core.Test/IndexerTests.cs +++ b/NzbDrone.Core.Test/IndexerTests.cs @@ -117,7 +117,6 @@ namespace NzbDrone.Core.Test Assert.AreEqual(quality, result.Quality.QualityType); } - [Test] [TestCase("Adventure.Inc.DVDRip.XviD-OSiTV")] public void custome_parser_full_parse(string title) @@ -143,8 +142,6 @@ namespace NzbDrone.Core.Test ExceptionVerification.ExcpectedWarns(1); } - - [Test] public void downloadFeed() { @@ -161,7 +158,6 @@ namespace NzbDrone.Core.Test ExceptionVerification.IgnoreWarns(); } - [Test] public void nzbsorg_search_returns_valid_results() { @@ -175,7 +171,6 @@ namespace NzbDrone.Core.Test .SetupGet(c => c.NzbsOrgHash) .Returns("bc8edb4cc49d4ae440775adec5ac001f"); - mocker.Resolve(); var result = mocker.Resolve().FetchEpisode("Simpsons", 21, 23); @@ -186,7 +181,6 @@ namespace NzbDrone.Core.Test result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(23)); } - [Test] public void newzbin_search_returns_valid_results() { @@ -200,7 +194,6 @@ namespace NzbDrone.Core.Test .SetupGet(c => c.NewzbinPassword) .Returns("smartar39865"); - mocker.Resolve(); var result = mocker.Resolve().FetchEpisode("Simpsons", 21, 23); @@ -211,6 +204,28 @@ namespace NzbDrone.Core.Test result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(23)); } + [Test] + public void nzbmatrix_search_returns_valid_results() + { + var mocker = new AutoMoqer(); + + mocker.GetMock() + .SetupGet(c => c.NzbMatrixUsername) + .Returns(""); + + mocker.GetMock() + .SetupGet(c => c.NzbMatrixApiKey) + .Returns(""); + + mocker.Resolve(); + + var result = mocker.Resolve().FetchEpisode("Simpsons", 21, 23); + + result.Should().NotBeEmpty(); + result.Should().OnlyContain(r => r.CleanTitle == "simpsons"); + result.Should().OnlyContain(r => r.SeasonNumber == 21); + result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(23)); + } [Test] public void nzbsorg_multi_word_search_returns_valid_results() @@ -225,7 +240,6 @@ namespace NzbDrone.Core.Test .SetupGet(c => c.NzbsOrgHash) .Returns("bc8edb4cc49d4ae440775adec5ac001f"); - mocker.Resolve(); var result = mocker.Resolve().FetchEpisode("Blue Bloods", 1, 19); @@ -236,5 +250,28 @@ namespace NzbDrone.Core.Test result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(19)); } + + [Test] + public void nzbmatrix_multi_word_search_returns_valid_results() + { + var mocker = new AutoMoqer(); + + mocker.GetMock() + .SetupGet(c => c.NzbMatrixUsername) + .Returns(""); + + mocker.GetMock() + .SetupGet(c => c.NzbMatrixApiKey) + .Returns(""); + + mocker.Resolve(); + + var result = mocker.Resolve().FetchEpisode("Blue Bloods", 1, 19); + + result.Should().NotBeEmpty(); + result.Should().OnlyContain(r => r.CleanTitle == "bluebloods"); + result.Should().OnlyContain(r => r.SeasonNumber == 1); + result.Should().OnlyContain(r => r.EpisodeNumbers.Contains(19)); + } } } diff --git a/NzbDrone.Core/Providers/Indexer/NzbMatrix.cs b/NzbDrone.Core/Providers/Indexer/NzbMatrix.cs index 72e5e1313..ed696518d 100644 --- a/NzbDrone.Core/Providers/Indexer/NzbMatrix.cs +++ b/NzbDrone.Core/Providers/Indexer/NzbMatrix.cs @@ -42,7 +42,14 @@ namespace NzbDrone.Core.Providers.Indexer protected override IList GetSearchUrls(string seriesTitle, int seasonNumber, int episodeNumber) { - return new List(); + var searchUrls = new List(); + + foreach (var url in Urls) + { + searchUrls.Add(String.Format("{0}&term={1}+s{2:00}e{3:00}", url, GetQueryTitle(seriesTitle), seasonNumber, episodeNumber)); + } + + return searchUrls; } } From b68784060b2eac188fdc55960355023a1e8d6487 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Sat, 4 Jun 2011 12:02:02 -0700 Subject: [PATCH 4/4] Needed to reverse the tuple order for Episode count. --- NzbDrone.Core/Providers/MediaFileProvider.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NzbDrone.Core/Providers/MediaFileProvider.cs b/NzbDrone.Core/Providers/MediaFileProvider.cs index 250e2efc1..9b6237df4 100644 --- a/NzbDrone.Core/Providers/MediaFileProvider.cs +++ b/NzbDrone.Core/Providers/MediaFileProvider.cs @@ -194,7 +194,7 @@ namespace NzbDrone.Core.Providers var episodeTotal = allEpisodes.Where(e => !e.Ignored && e.AirDate <= DateTime.Today && e.AirDate.Year > 1900).ToList(); var avilableEpisodes = episodeTotal.Where(e => e.EpisodeFileId > 0); - return new Tuple(episodeTotal.Count, avilableEpisodes.Count()); + return new Tuple(avilableEpisodes.Count(), episodeTotal.Count); } private List GetMediaFileList(string path)