From e8238fb03aa715b43534e4daee6323ac5df5b933 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Sat, 13 Jul 2013 01:11:04 -0700 Subject: [PATCH] Fixed an issue when trying to import files --- .../ImportDecisionMakerFixture.cs | 13 ------------- .../EpisodeImport/ImportApprovedEpisodes.cs | 2 +- .../MediaFiles/EpisodeImport/ImportDecisionMaker.cs | 3 +-- NzbDrone.Core/Parser/Model/LocalEpisode.cs | 5 +++++ NzbDrone.Core/Parser/ParsingService.cs | 9 +++++---- 5 files changed, 12 insertions(+), 20 deletions(-) diff --git a/NzbDrone.Core.Test/MediaFileTests/EpisodeImportTests/ImportDecisionMakerFixture.cs b/NzbDrone.Core.Test/MediaFileTests/EpisodeImportTests/ImportDecisionMakerFixture.cs index da2e0355f..2f0f06320 100644 --- a/NzbDrone.Core.Test/MediaFileTests/EpisodeImportTests/ImportDecisionMakerFixture.cs +++ b/NzbDrone.Core.Test/MediaFileTests/EpisodeImportTests/ImportDecisionMakerFixture.cs @@ -150,18 +150,5 @@ namespace NzbDrone.Core.Test.MediaFileTests.EpisodeImportTests ExceptionVerification.ExpectedErrors(3); } - - [Test] - public void should_use_filename_without_extension_when_getting_episodes_from_ParsingService() - { - var expectedFilename = Path.GetFileNameWithoutExtension(_videoFiles.First()); - - GivenSpecifications(_pass1, _pass2, _pass3); - - Subject.GetImportDecisions(_videoFiles, _series); - - Mocker.GetMock().Verify(v => v.GetEpisodes(expectedFilename, _series), Times.Once()); - } } - } \ No newline at end of file diff --git a/NzbDrone.Core/MediaFiles/EpisodeImport/ImportApprovedEpisodes.cs b/NzbDrone.Core/MediaFiles/EpisodeImport/ImportApprovedEpisodes.cs index 798e686dd..e4557d2e3 100644 --- a/NzbDrone.Core/MediaFiles/EpisodeImport/ImportApprovedEpisodes.cs +++ b/NzbDrone.Core/MediaFiles/EpisodeImport/ImportApprovedEpisodes.cs @@ -77,7 +77,7 @@ namespace NzbDrone.Core.MediaFiles.EpisodeImport } catch (Exception e) { - _logger.WarnException("Couldn't add report to download queue. " + localEpisode, e); + _logger.WarnException("Couldn't import episode " + localEpisode, e); } } diff --git a/NzbDrone.Core/MediaFiles/EpisodeImport/ImportDecisionMaker.cs b/NzbDrone.Core/MediaFiles/EpisodeImport/ImportDecisionMaker.cs index 8b4d8bd1b..f1f16a577 100644 --- a/NzbDrone.Core/MediaFiles/EpisodeImport/ImportDecisionMaker.cs +++ b/NzbDrone.Core/MediaFiles/EpisodeImport/ImportDecisionMaker.cs @@ -43,8 +43,7 @@ namespace NzbDrone.Core.MediaFiles.EpisodeImport try { - var fileWithoutExtension = Path.GetFileNameWithoutExtension(file); - var parsedEpisode = _parsingService.GetEpisodes(Path.GetFileNameWithoutExtension(file), series); + var parsedEpisode = _parsingService.GetEpisodes(file, series); if (parsedEpisode != null) { diff --git a/NzbDrone.Core/Parser/Model/LocalEpisode.cs b/NzbDrone.Core/Parser/Model/LocalEpisode.cs index cff8d0128..f78013a80 100644 --- a/NzbDrone.Core/Parser/Model/LocalEpisode.cs +++ b/NzbDrone.Core/Parser/Model/LocalEpisode.cs @@ -17,5 +17,10 @@ namespace NzbDrone.Core.Parser.Model public QualityModel Quality { get; set; } public int SeasonNumber { get { return Episodes.Select(c => c.SeasonNumber).Distinct().Single(); } } + + public override string ToString() + { + return Path; + } } } \ No newline at end of file diff --git a/NzbDrone.Core/Parser/ParsingService.cs b/NzbDrone.Core/Parser/ParsingService.cs index b2e39af83..4cd41a8f1 100644 --- a/NzbDrone.Core/Parser/ParsingService.cs +++ b/NzbDrone.Core/Parser/ParsingService.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.IO; using System.Linq; using NLog; using NzbDrone.Core.Parser.Model; @@ -8,7 +9,7 @@ namespace NzbDrone.Core.Parser { public interface IParsingService { - LocalEpisode GetEpisodes(string fileName, Series series); + LocalEpisode GetEpisodes(string filename, Series series); Series GetSeries(string title); RemoteEpisode Map(ParsedEpisodeInfo parsedEpisodeInfo); } @@ -26,9 +27,9 @@ namespace NzbDrone.Core.Parser _logger = logger; } - public LocalEpisode GetEpisodes(string fileName, Series series) + public LocalEpisode GetEpisodes(string filename, Series series) { - var parsedEpisodeInfo = Parser.ParseTitle(fileName); + var parsedEpisodeInfo = Parser.ParsePath(filename); if (parsedEpisodeInfo == null) { @@ -47,7 +48,7 @@ namespace NzbDrone.Core.Parser Series = series, Quality = parsedEpisodeInfo.Quality, Episodes = episodes, - Path = fileName, + Path = filename, ParsedEpisodeInfo = parsedEpisodeInfo }; }