New: Allow Season packs to be grabbed automatically if all episodes will have aired within 24 hours
Closes #5191
This commit is contained in:
parent
0450d0b2b6
commit
87795708b5
|
@ -1,4 +1,4 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using FizzWare.NBuilder;
|
using FizzWare.NBuilder;
|
||||||
|
@ -57,6 +57,14 @@ namespace NzbDrone.Core.Test.DecisionEngineTests
|
||||||
Subject.IsSatisfiedBy(_remoteEpisode, null).Accepted.Should().BeTrue();
|
Subject.IsSatisfiedBy(_remoteEpisode, null).Accepted.Should().BeTrue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void should_return_true_if_all_episodes_will_have_aired_in_the_next_24_hours()
|
||||||
|
{
|
||||||
|
_remoteEpisode.Episodes.Last().AirDateUtc = DateTime.UtcNow.AddHours(23);
|
||||||
|
|
||||||
|
Subject.IsSatisfiedBy(_remoteEpisode, null).Accepted.Should().BeTrue();
|
||||||
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void should_return_false_if_one_episode_has_not_aired()
|
public void should_return_false_if_one_episode_has_not_aired()
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using NLog;
|
using NLog;
|
||||||
using NzbDrone.Common.Extensions;
|
using NzbDrone.Common.Extensions;
|
||||||
|
@ -25,7 +25,7 @@ namespace NzbDrone.Core.DecisionEngine.Specifications
|
||||||
{
|
{
|
||||||
_logger.Debug("Checking if all episodes in full season release have aired. {0}", subject.Release.Title);
|
_logger.Debug("Checking if all episodes in full season release have aired. {0}", subject.Release.Title);
|
||||||
|
|
||||||
if (subject.Episodes.Any(e => !e.AirDateUtc.HasValue || e.AirDateUtc.Value.After(DateTime.UtcNow)))
|
if (subject.Episodes.Any(e => !e.AirDateUtc.HasValue || e.AirDateUtc.Value.After(DateTime.UtcNow.AddHours(24))))
|
||||||
{
|
{
|
||||||
_logger.Debug("Full season release {0} rejected. All episodes haven't aired yet.", subject.Release.Title);
|
_logger.Debug("Full season release {0} rejected. All episodes haven't aired yet.", subject.Release.Title);
|
||||||
return Decision.Reject("Full season release rejected. All episodes haven't aired yet.");
|
return Decision.Reject("Full season release rejected. All episodes haven't aired yet.");
|
||||||
|
|
Loading…
Reference in New Issue