diff --git a/NzbDrone.Core.Test/JobProviderTest.cs b/NzbDrone.Core.Test/JobProviderTest.cs index 5dd4041fe9..3fef46518f 100644 --- a/NzbDrone.Core.Test/JobProviderTest.cs +++ b/NzbDrone.Core.Test/JobProviderTest.cs @@ -313,6 +313,32 @@ public void Get_Next_Execution_Time() Assert.IsNotEmpty(settings); Assert.AreEqual(next, settings[0].LastExecution.AddMinutes(15)); } + + + [Test] + public void Disabled_isnt_run_by_scheduler() + { + var repo = MockLib.GetEmptyRepository(); + + + var disabledJob = new DisabledJob(); + IEnumerable fakeJobs = new List { disabledJob }; + var mocker = new AutoMoqer(); + + mocker.SetConstant(repo); + mocker.SetConstant(fakeJobs); + + var timerProvider = mocker.Resolve(); + timerProvider.Initialize(); + + timerProvider.RunScheduled(); + + Thread.Sleep(1000); + + + //Assert + Assert.AreEqual(0, disabledJob.ExexutionCount); + } } public class FakeJob : IJob @@ -345,9 +371,11 @@ public int DefaultInterval get { return 0; } } + public int ExexutionCount { get; set; } + public void Start(ProgressNotification notification, int targetId) { - + ExexutionCount++; } } diff --git a/NzbDrone.Core/Providers/Jobs/JobProvider.cs b/NzbDrone.Core/Providers/Jobs/JobProvider.cs index d252aa2704..24f8fd4b09 100644 --- a/NzbDrone.Core/Providers/Jobs/JobProvider.cs +++ b/NzbDrone.Core/Providers/Jobs/JobProvider.cs @@ -95,6 +95,7 @@ public virtual bool RunScheduled() _isRunning = false; } + Logger.Debug("Finished executing scheduled tasks."); return true; }