|
|
|
@ -1,7 +1,9 @@
|
|
|
|
|
// ReSharper disable RedundantUsingDirective
|
|
|
|
|
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.IO;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using FizzWare.NBuilder;
|
|
|
|
|
using FluentAssertions;
|
|
|
|
|
using NUnit.Framework;
|
|
|
|
@ -748,5 +750,92 @@ namespace NzbDrone.Core.Test.ProviderTests.MediaFileProviderTests
|
|
|
|
|
//Assert
|
|
|
|
|
result.Should().Be("30 Rock - S06E06-E07-E08 - Hello + World");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_use_airDate_if_series_isDaily()
|
|
|
|
|
{
|
|
|
|
|
var fakeConfig = Mocker.GetMock<ConfigProvider>();
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingIncludeSeriesName).Returns(true);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingIncludeEpisodeTitle).Returns(true);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingAppendQuality).Returns(true);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingSeparatorStyle).Returns(0);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingNumberStyle).Returns(2);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingReplaceSpaces).Returns(false);
|
|
|
|
|
|
|
|
|
|
var series = Builder<Series>
|
|
|
|
|
.CreateNew()
|
|
|
|
|
.With(s => s.IsDaily = true)
|
|
|
|
|
.With(s => s.Title = "The Daily Show with Jon Stewart")
|
|
|
|
|
.Build();
|
|
|
|
|
|
|
|
|
|
var episodes = Builder<Episode>
|
|
|
|
|
.CreateListOfSize(1)
|
|
|
|
|
.All()
|
|
|
|
|
.With(e => e.AirDate = new DateTime(2012, 12, 13))
|
|
|
|
|
.With(e => e.Title = "Kristen Stewart")
|
|
|
|
|
.Build();
|
|
|
|
|
|
|
|
|
|
var result = Mocker.Resolve<MediaFileProvider>()
|
|
|
|
|
.GetNewFilename(episodes, series, QualityTypes.HDTV, false, new EpisodeFile());
|
|
|
|
|
result.Should().Be("The Daily Show with Jon Stewart - 2012-12-13 - Kristen Stewart [HDTV]");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_use_airDate_if_series_isDaily_no_episode_title()
|
|
|
|
|
{
|
|
|
|
|
var fakeConfig = Mocker.GetMock<ConfigProvider>();
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingIncludeSeriesName).Returns(true);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingIncludeEpisodeTitle).Returns(false);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingAppendQuality).Returns(false);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingSeparatorStyle).Returns(0);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingNumberStyle).Returns(2);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingReplaceSpaces).Returns(false);
|
|
|
|
|
|
|
|
|
|
var series = Builder<Series>
|
|
|
|
|
.CreateNew()
|
|
|
|
|
.With(s => s.IsDaily = true)
|
|
|
|
|
.With(s => s.Title = "The Daily Show with Jon Stewart")
|
|
|
|
|
.Build();
|
|
|
|
|
|
|
|
|
|
var episodes = Builder<Episode>
|
|
|
|
|
.CreateListOfSize(1)
|
|
|
|
|
.All()
|
|
|
|
|
.With(e => e.AirDate = new DateTime(2012, 12, 13))
|
|
|
|
|
.With(e => e.Title = "Kristen Stewart")
|
|
|
|
|
.Build();
|
|
|
|
|
|
|
|
|
|
var result = Mocker.Resolve<MediaFileProvider>()
|
|
|
|
|
.GetNewFilename(episodes, series, QualityTypes.HDTV, false, new EpisodeFile());
|
|
|
|
|
result.Should().Be("The Daily Show with Jon Stewart - 2012-12-13");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_set_airdate_to_unknown_if_not_available()
|
|
|
|
|
{
|
|
|
|
|
var fakeConfig = Mocker.GetMock<ConfigProvider>();
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingIncludeSeriesName).Returns(true);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingIncludeEpisodeTitle).Returns(true);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingAppendQuality).Returns(false);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingSeparatorStyle).Returns(0);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingNumberStyle).Returns(2);
|
|
|
|
|
fakeConfig.SetupGet(c => c.SortingReplaceSpaces).Returns(false);
|
|
|
|
|
|
|
|
|
|
var series = Builder<Series>
|
|
|
|
|
.CreateNew()
|
|
|
|
|
.With(s => s.IsDaily = true)
|
|
|
|
|
.With(s => s.Title = "The Daily Show with Jon Stewart")
|
|
|
|
|
.Build();
|
|
|
|
|
|
|
|
|
|
var episodes = Builder<Episode>
|
|
|
|
|
.CreateListOfSize(1)
|
|
|
|
|
.All()
|
|
|
|
|
.With(e => e.AirDate = null)
|
|
|
|
|
.With(e => e.Title = "Kristen Stewart")
|
|
|
|
|
.Build();
|
|
|
|
|
|
|
|
|
|
var result = Mocker.Resolve<MediaFileProvider>()
|
|
|
|
|
.GetNewFilename(episodes, series, QualityTypes.HDTV, false, new EpisodeFile());
|
|
|
|
|
result.Should().Be("The Daily Show with Jon Stewart - Unknown - Kristen Stewart");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|