2013-04-15 03:41:39 +02:00
|
|
|
|
using FluentAssertions;
|
2012-08-07 07:24:15 +02:00
|
|
|
|
using NUnit.Framework;
|
2013-04-17 05:52:43 +02:00
|
|
|
|
using NzbDrone.Core.Configuration;
|
2013-03-07 01:19:49 +01:00
|
|
|
|
using NzbDrone.Core.DecisionEngine.Specifications;
|
2013-04-15 03:41:39 +02:00
|
|
|
|
using NzbDrone.Core.Parser.Model;
|
2012-08-07 07:24:15 +02:00
|
|
|
|
using NzbDrone.Core.Test.Framework;
|
|
|
|
|
|
2013-02-19 03:19:38 +01:00
|
|
|
|
namespace NzbDrone.Core.Test.DecisionEngineTests
|
2012-08-07 07:24:15 +02:00
|
|
|
|
{
|
|
|
|
|
[TestFixture]
|
2013-04-07 19:53:04 +02:00
|
|
|
|
public class AllowedReleaseGroupSpecificationFixture : CoreTest<AllowedReleaseGroupSpecification>
|
2012-08-07 07:24:15 +02:00
|
|
|
|
{
|
2013-04-15 03:41:39 +02:00
|
|
|
|
private RemoteEpisode _parseResult;
|
2012-08-07 07:24:15 +02:00
|
|
|
|
|
|
|
|
|
[SetUp]
|
|
|
|
|
public void Setup()
|
|
|
|
|
{
|
2013-04-15 03:41:39 +02:00
|
|
|
|
_parseResult = new RemoteEpisode
|
|
|
|
|
{
|
|
|
|
|
Report = new ReportInfo
|
|
|
|
|
{
|
|
|
|
|
ReleaseGroup = "2HD"
|
|
|
|
|
}
|
|
|
|
|
};
|
2012-08-07 07:24:15 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_be_true_when_allowedReleaseGroups_is_empty()
|
|
|
|
|
{
|
2013-04-17 05:52:43 +02:00
|
|
|
|
|
2013-04-15 03:41:39 +02:00
|
|
|
|
Subject.IsSatisfiedBy(_parseResult).Should().BeTrue();
|
2012-08-07 07:24:15 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_be_true_when_allowedReleaseGroups_is_nzbs_releaseGroup()
|
|
|
|
|
{
|
2013-04-15 03:41:39 +02:00
|
|
|
|
Subject.IsSatisfiedBy(_parseResult).Should().BeTrue();
|
2012-08-07 07:24:15 +02:00
|
|
|
|
}
|
|
|
|
|
|
2013-04-17 05:52:43 +02:00
|
|
|
|
[TestCase("2HD")]
|
|
|
|
|
[TestCase("2hd")]
|
|
|
|
|
[TestCase("other, 2hd, next")]
|
|
|
|
|
[TestCase("other,2hd,next")]
|
|
|
|
|
[TestCase("other,2hd,next,")]
|
|
|
|
|
public void should_be_true_when_allowedReleaseGroups_contains_nzbs_releaseGroup(string allowedList)
|
2012-08-07 07:24:15 +02:00
|
|
|
|
{
|
2013-04-17 05:52:43 +02:00
|
|
|
|
Mocker.GetMock<IConfigService>().SetupGet(c => c.AllowedReleaseGroups).Returns(allowedList);
|
2013-04-15 03:41:39 +02:00
|
|
|
|
Subject.IsSatisfiedBy(_parseResult).Should().BeTrue();
|
2012-08-07 07:24:15 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_be_false_when_allowedReleaseGroups_does_not_contain_nzbs_releaseGroup()
|
|
|
|
|
{
|
2013-04-17 05:52:43 +02:00
|
|
|
|
Mocker.GetMock<IConfigService>().SetupGet(c => c.AllowedReleaseGroups).Returns("other");
|
2013-04-15 03:41:39 +02:00
|
|
|
|
Subject.IsSatisfiedBy(_parseResult).Should().BeFalse();
|
2012-08-07 07:24:15 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|