1
0
Fork 0
mirror of https://github.com/Radarr/Radarr synced 2025-02-01 04:13:42 +00:00

Fixed broken tests.

This commit is contained in:
kay.one 2011-11-30 20:16:46 -08:00
parent 6805a1041b
commit 5c091ccb80

View file

@ -40,6 +40,19 @@ public void TearDown()
Mocker.Resolve<JobProvider>().Queue.Should().BeEmpty(); Mocker.Resolve<JobProvider>().Queue.Should().BeEmpty();
} }
private void ResetLastExecution()
{
var jobProvider = Mocker.Resolve<JobProvider>();
jobProvider.Initialize();
var jobs = jobProvider.All();
foreach (var jobDefinition in jobs)
{
jobDefinition.LastExecution = new DateTime(2000, 1, 1);
jobProvider.SaveDefinition(jobDefinition);
}
}
private void WaitForQueue() private void WaitForQueue()
{ {
Console.WriteLine("Waiting for queue to clear."); Console.WriteLine("Waiting for queue to clear.");
@ -58,13 +71,12 @@ public void running_scheduled_jobs_should_updates_last_execution_time()
Mocker.SetConstant(BaseFakeJobs); Mocker.SetConstant(BaseFakeJobs);
//Act //Act
var jobProvider = Mocker.Resolve<JobProvider>(); ResetLastExecution();
jobProvider.Initialize(); Mocker.Resolve<JobProvider>().QueueScheduled();
jobProvider.QueueScheduled(); WaitForQueue();
//Assert //Assert
WaitForQueue(); var settings = Mocker.Resolve<JobProvider>().All();
var settings = jobProvider.All();
settings.First().LastExecution.Should().BeWithin(TimeSpan.FromSeconds(10)); settings.First().LastExecution.Should().BeWithin(TimeSpan.FromSeconds(10));
fakeJob.ExecutionCount.Should().Be(1); fakeJob.ExecutionCount.Should().Be(1);
} }
@ -76,13 +88,12 @@ public void failing_scheduled_job_should_mark_job_as_failed()
Mocker.SetConstant(BaseFakeJobs); Mocker.SetConstant(BaseFakeJobs);
//Act //Act
var jobProvider = Mocker.Resolve<JobProvider>(); ResetLastExecution();
jobProvider.Initialize(); Mocker.Resolve<JobProvider>().QueueScheduled();
jobProvider.QueueScheduled(); WaitForQueue();
//Assert //Assert
WaitForQueue(); var settings = Mocker.Resolve<JobProvider>().All();
var settings = jobProvider.All();
settings.First().LastExecution.Should().BeWithin(TimeSpan.FromSeconds(10)); settings.First().LastExecution.Should().BeWithin(TimeSpan.FromSeconds(10));
settings.First().Success.Should().BeFalse(); settings.First().Success.Should().BeFalse();
brokenJob.ExecutionCount.Should().Be(1); brokenJob.ExecutionCount.Should().Be(1);
@ -96,11 +107,12 @@ public void scheduler_skips_jobs_that_arent_mature_yet()
Mocker.SetConstant(BaseFakeJobs); Mocker.SetConstant(BaseFakeJobs);
//Act //Act
var jobProvider = Mocker.Resolve<JobProvider>(); ResetLastExecution();
jobProvider.Initialize();
jobProvider.QueueScheduled(); Mocker.Resolve<JobProvider>().QueueScheduled();
WaitForQueue(); WaitForQueue();
jobProvider.QueueScheduled();
Mocker.Resolve<JobProvider>().QueueScheduled();
WaitForQueue(); WaitForQueue();
//Assert //Assert
@ -327,6 +339,7 @@ public void job_with_specific_target_should_not_update_last_execution()
//Act //Act
var jobProvider = Mocker.Resolve<JobProvider>(); var jobProvider = Mocker.Resolve<JobProvider>();
jobProvider.Initialize(); jobProvider.Initialize();
ResetLastExecution();
jobProvider.QueueJob(typeof(FakeJob), 10); jobProvider.QueueJob(typeof(FakeJob), 10);
WaitForQueue(); WaitForQueue();
@ -386,15 +399,13 @@ public void Item_added_to_queue_while_scheduler_runs_should_be_executed()
IList<IJob> BaseFakeJobs = new List<IJob> { slowJob, disabledJob }; IList<IJob> BaseFakeJobs = new List<IJob> { slowJob, disabledJob };
Mocker.SetConstant(BaseFakeJobs); Mocker.SetConstant(BaseFakeJobs);
var jobProvider = Mocker.Resolve<JobProvider>(); ResetLastExecution();
jobProvider.Initialize(); var _jobThread = new Thread(Mocker.Resolve<JobProvider>().QueueScheduled);
var _jobThread = new Thread(jobProvider.QueueScheduled);
_jobThread.Start(); _jobThread.Start();
Thread.Sleep(200); Thread.Sleep(200);
jobProvider.QueueJob(typeof(DisabledJob), 12); Mocker.Resolve<JobProvider>().QueueJob(typeof(DisabledJob), 12);
WaitForQueue(); WaitForQueue();