/// <summary> /// Marks the message as delivered. /// </summary> /// <param name="providerStatus">The provider status.</param> /// <param name="deliveredDateTime">The delivered date time.</param> public void MarkMessageAsDelivered(String providerStatus, DateTime deliveredDateTime) { this.CheckMessageCanBeSetToDelivered(); EmailMessageDeliveredEvent messageDeliveredEvent = new EmailMessageDeliveredEvent(this.AggregateId, providerStatus, deliveredDateTime); this.ApplyAndAppend(messageDeliveredEvent); }
public void EmailMessageDeliveredEvent_CanBeCreated_IsCreated() { EmailMessageDeliveredEvent messageDeliveredEvent = new EmailMessageDeliveredEvent(TestData.MessageId, TestData.ProviderStatusDescription, TestData.DeliveredDateTime); messageDeliveredEvent.ShouldNotBeNull(); messageDeliveredEvent.AggregateId.ShouldBe(TestData.MessageId); messageDeliveredEvent.EventId.ShouldNotBe(Guid.Empty); messageDeliveredEvent.MessageId.ShouldBe(TestData.MessageId); messageDeliveredEvent.ProviderStatus.ShouldBe(TestData.ProviderStatusDescription); messageDeliveredEvent.DeliveredDateTime.ShouldBe(TestData.DeliveredDateTime); }
/// <summary> /// Plays the event. /// </summary> /// <param name="domainEvent">The domain event.</param> private void PlayEvent(EmailMessageDeliveredEvent domainEvent) { this.MessageStatus = MessageStatus.Delivered; }