public void ExertsRowLevelLockingBecauseItCan() { storage.EnsureTableIsCreated(); var now = DateTime.UtcNow; var t1 = now; var t2 = now.AddDays(1); storage.Add(new Rebus.Timeout.Timeout("bimse", "1", t1, Guid.Empty, "hej")); storage.Add(new Rebus.Timeout.Timeout("bimse", "2", t2, Guid.Empty, "hej")); TimeMachine.FixTo(t1.AddMinutes(-10)); using (var resultBefore = storage.GetDueTimeouts()) { var timeoutsBefore = resultBefore.DueTimeouts.ToList(); TimeMachine.FixTo(t1.AddMinutes(10)); using (var resultsAfterT1 = storage.GetDueTimeouts()) { var timeoutsAfterT1 = resultsAfterT1.DueTimeouts.ToList(); TimeMachine.FixTo(t2.AddMinutes(10)); using (var resultsAfterT2 = storage.GetDueTimeouts()) { var timeoutsAfterT2 = resultsAfterT2.DueTimeouts.ToList(); Assert.That(timeoutsBefore.Count, Is.EqualTo(0)); Assert.That(timeoutsAfterT1.Count, Is.EqualTo(1)); Assert.That(timeoutsAfterT2.Count, Is.EqualTo(1)); } } } }