예제 #1
0
        public void TryDequeue_ZeroJobsQueued_ReturnsFalse()
        {
            var jobStore = new TestJobStore();
            Job job;

            Assert.That(jobStore.TryDequeue(out job), Is.False);
            Assert.That(job, Is.Null);
        }
예제 #2
0
        public void TryDequeue_NoExpiredJobsInQueue_ReturnsFalse()
        {
            var jobStore = new TestJobStore()
            {
                UtcNow = new DateTime(2011, 1, 1, 1, 1, 1, DateTimeKind.Utc)
            };

            jobStore.Jobs.Add(new Job("http://jalla", jobStore.UtcNow.AddDays(3), "GET"));
            Job job;

            Assert.That(jobStore.TryDequeue(out job), Is.False);
            Assert.That(job, Is.Null);
        }
예제 #3
0
        public void TryDequeue_TwoExpiredJobsInQueue_DequeuesOldestJob()
        {
            var jobStore = new TestJobStore()
            {
                UtcNow = new DateTime(2011, 1, 1, 1, 1, 1, DateTimeKind.Utc)
            };
            var oldJob = new Job("http://stale", jobStore.UtcNow.AddDays(-100), "GET");

            jobStore.Jobs.Add(oldJob);
            var newJob = new Job("http://fresh", jobStore.UtcNow.AddDays(-1), "GET");

            jobStore.Jobs.Add(newJob);
            Job job;

            Assert.That(jobStore.TryDequeue(out job), Is.True);
            Assert.That(job, Is.EqualTo(oldJob));
        }