public void AddTwoEmergencies_ShouldHaveBoth() { // Arrange var emergencyId1 = Guid.NewGuid(); var emergencyId2 = Guid.NewGuid(); var now = 9.April(2019).At(7.Hours(6.Minutes())); var sut = new EmergencyNotificationsQueueService(_options); // Act sut.Enqueue(emergencyId1, ActivityType.EmergencyMood, now); sut.Enqueue(emergencyId2, ActivityType.EmergencyStart, now); // Assert var canDequeue = sut.TryDequeue(out var result, _afterSendTime); canDequeue.Should().BeTrue(); result.Id.Should().Be(emergencyId1); result.Type.Should().Be(ActivityType.EmergencyMood); canDequeue = sut.TryDequeue(out result, _afterSendTime); canDequeue.Should().BeTrue(); result.Id.Should().Be(emergencyId2); result.Type.Should().Be(ActivityType.EmergencyStart); sut.TryDequeue(out _, _afterSendTime).Should().BeFalse(); }
public void AddNew_After2Seconds_ShouldHaveNone() { // Arrange var emergencyId = Guid.NewGuid(); var now = 9.April(2019).At(7.Hours(6.Minutes())); var sut = new EmergencyNotificationsQueueService(_options); // Act sut.Enqueue(emergencyId, ActivityType.EmergencyStart, now); // Assert sut.TryDequeue(out _, _beforeSendtime).Should().BeFalse(); sut.TryDequeue(out _, _afterSendTime).Should().BeTrue(); }