mirror of
https://github.com/Sonarr/Sonarr
synced 2024-12-27 02:07:41 +00:00
parent
23681167e4
commit
559011ba82
2 changed files with 126 additions and 1 deletions
|
@ -10,6 +10,7 @@ using NzbDrone.Core.Providers.Core;
|
||||||
using NzbDrone.Core.Repository;
|
using NzbDrone.Core.Repository;
|
||||||
using NzbDrone.Core.Repository.Quality;
|
using NzbDrone.Core.Repository.Quality;
|
||||||
using NzbDrone.Core.Test.Framework;
|
using NzbDrone.Core.Test.Framework;
|
||||||
|
using PetaPoco;
|
||||||
|
|
||||||
// ReSharper disable InconsistentNaming
|
// ReSharper disable InconsistentNaming
|
||||||
namespace NzbDrone.Core.Test
|
namespace NzbDrone.Core.Test
|
||||||
|
@ -350,5 +351,129 @@ namespace NzbDrone.Core.Test
|
||||||
series.QualityProfile.Should().NotBeNull();
|
series.QualityProfile.Should().NotBeNull();
|
||||||
series.QualityProfileId.Should().Be(fakeQuality.QualityProfileId);
|
series.QualityProfileId.Should().Be(fakeQuality.QualityProfileId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void SeriesPathExists_exact_match()
|
||||||
|
{
|
||||||
|
var mocker = new AutoMoqer(MockBehavior.Strict);
|
||||||
|
var db = MockLib.GetEmptyDatabase();
|
||||||
|
mocker.SetConstant(db);
|
||||||
|
|
||||||
|
var path = @"C:\Test\TV\30 Rock";
|
||||||
|
|
||||||
|
var fakeSeries = Builder<Series>.CreateListOfSize(10)
|
||||||
|
.WhereAll()
|
||||||
|
.Have(c => c.QualityProfileId = 1)
|
||||||
|
.WhereTheFirst(1)
|
||||||
|
.Have(c => c.Path = path)
|
||||||
|
.Build();
|
||||||
|
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
|
||||||
|
|
||||||
|
db.InsertMany(fakeSeries);
|
||||||
|
db.Insert(fakeQuality);
|
||||||
|
|
||||||
|
//Act
|
||||||
|
mocker.Resolve<QualityProvider>();
|
||||||
|
//mocker.GetMock<IDatabase>().Setup(s => s.Fetch<Series, QualityProfile>(It.IsAny<string>())).Returns(
|
||||||
|
//fakeSeries.ToList());
|
||||||
|
|
||||||
|
var result = mocker.Resolve<SeriesProvider>().SeriesPathExists(path);
|
||||||
|
|
||||||
|
//Assert
|
||||||
|
result.Should().BeTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void SeriesPathExists_match()
|
||||||
|
{
|
||||||
|
var mocker = new AutoMoqer(MockBehavior.Strict);
|
||||||
|
var db = MockLib.GetEmptyDatabase();
|
||||||
|
mocker.SetConstant(db);
|
||||||
|
|
||||||
|
var path = @"C:\Test\TV\30 Rock";
|
||||||
|
|
||||||
|
var fakeSeries = Builder<Series>.CreateListOfSize(10)
|
||||||
|
.WhereAll()
|
||||||
|
.Have(c => c.QualityProfileId = 1)
|
||||||
|
.WhereTheFirst(1)
|
||||||
|
.Have(c => c.Path = path)
|
||||||
|
.Build();
|
||||||
|
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
|
||||||
|
|
||||||
|
db.InsertMany(fakeSeries);
|
||||||
|
db.Insert(fakeQuality);
|
||||||
|
|
||||||
|
//Act
|
||||||
|
mocker.Resolve<QualityProvider>();
|
||||||
|
//mocker.GetMock<IDatabase>().Setup(s => s.Fetch<Series, QualityProfile>(It.IsAny<string>())).Returns(
|
||||||
|
//fakeSeries.ToList());
|
||||||
|
|
||||||
|
var result = mocker.Resolve<SeriesProvider>().SeriesPathExists(path.ToUpper());
|
||||||
|
|
||||||
|
//Assert
|
||||||
|
result.Should().BeTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void SeriesPathExists_match_alt()
|
||||||
|
{
|
||||||
|
var mocker = new AutoMoqer(MockBehavior.Strict);
|
||||||
|
var db = MockLib.GetEmptyDatabase();
|
||||||
|
mocker.SetConstant(db);
|
||||||
|
|
||||||
|
var path = @"C:\Test\TV\The Simpsons";
|
||||||
|
|
||||||
|
var fakeSeries = Builder<Series>.CreateListOfSize(10)
|
||||||
|
.WhereAll()
|
||||||
|
.Have(c => c.QualityProfileId = 1)
|
||||||
|
.WhereTheFirst(1)
|
||||||
|
.Have(c => c.Path = path)
|
||||||
|
.Build();
|
||||||
|
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
|
||||||
|
|
||||||
|
db.InsertMany(fakeSeries);
|
||||||
|
db.Insert(fakeQuality);
|
||||||
|
|
||||||
|
//Act
|
||||||
|
mocker.Resolve<QualityProvider>();
|
||||||
|
//mocker.GetMock<IDatabase>().Setup(s => s.Fetch<Series, QualityProfile>(It.IsAny<string>())).Returns(
|
||||||
|
//fakeSeries.ToList());
|
||||||
|
|
||||||
|
var result = mocker.Resolve<SeriesProvider>().SeriesPathExists(@"c:\Test\Tv\the sIMpsons");
|
||||||
|
|
||||||
|
//Assert
|
||||||
|
result.Should().BeTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void SeriesPathExists_match_false()
|
||||||
|
{
|
||||||
|
var mocker = new AutoMoqer(MockBehavior.Strict);
|
||||||
|
var db = MockLib.GetEmptyDatabase();
|
||||||
|
mocker.SetConstant(db);
|
||||||
|
|
||||||
|
var path = @"C:\Test\TV\30 Rock";
|
||||||
|
|
||||||
|
var fakeSeries = Builder<Series>.CreateListOfSize(10)
|
||||||
|
.WhereAll()
|
||||||
|
.Have(c => c.QualityProfileId = 1)
|
||||||
|
.WhereTheFirst(1)
|
||||||
|
.Have(c => c.Path = path)
|
||||||
|
.Build();
|
||||||
|
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
|
||||||
|
|
||||||
|
db.InsertMany(fakeSeries);
|
||||||
|
db.Insert(fakeQuality);
|
||||||
|
|
||||||
|
//Act
|
||||||
|
mocker.Resolve<QualityProvider>();
|
||||||
|
//mocker.GetMock<IDatabase>().Setup(s => s.Fetch<Series, QualityProfile>(It.IsAny<string>())).Returns(
|
||||||
|
//fakeSeries.ToList());
|
||||||
|
|
||||||
|
var result = mocker.Resolve<SeriesProvider>().SeriesPathExists(@"C:\Test\TV\Not A match");
|
||||||
|
|
||||||
|
//Assert
|
||||||
|
result.Should().BeFalse();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} |