ConfirmCustomerEmailAddress_WrongHashAfterPreviousCorrectConfirmation_ConfirmationFailedEventReturned() { // given var customerRegisteredEvent = CreateCustomerRegisteredEvent(); var customerEmailAddressConfirmedEvent = new CustomerEmailAddressConfirmed(_customerId); var customer = Customer.Reconstitute( new IEvent[] { customerRegisteredEvent, customerEmailAddressConfirmedEvent }); var wrongHash = Guid.NewGuid().ToString(); var confirmCustomerEmailAddress = new ConfirmCustomerEmailAddress( _customerId.Value.ToString(), wrongHash); // when var resultEvent = customer.ConfirmCustomerEmailAddress(confirmCustomerEmailAddress); // then Assert.NotNull(resultEvent); Assert.IsType <CustomerEmailAddressConfirmationFailed>(resultEvent); var confirmationFailed = (CustomerEmailAddressConfirmationFailed)resultEvent; Assert.Equal(_customerId.Value, confirmationFailed.Id.Value); }
public void ConfirmCustomerEmailAddress_ConfirmUpdatedEmailAddress_AddressConfirmedEventReturned() { // given var customerRegisteredEvent = CreateCustomerRegisteredEvent(); var addressConfirmedEvent = new CustomerEmailAddressConfirmed(_customerId); var newEmailAddress = new EmailAddress("*****@*****.**"); var newEmailHash = new CustomHash(); var customerEmailAddressChanged = new CustomerEmailAddressChanged( _customerId, newEmailAddress, newEmailHash); var customer = Customer.Reconstitute( new IEvent[] { customerRegisteredEvent, addressConfirmedEvent, customerEmailAddressChanged }); var confirmCustomerEmailAddress = new ConfirmCustomerEmailAddress( _customerId.Value.ToString(), newEmailHash.Value.ToString()); // when var resultEvent = customer.ConfirmCustomerEmailAddress(confirmCustomerEmailAddress); // then Assert.NotNull(resultEvent); Assert.IsType <CustomerEmailAddressConfirmed>(resultEvent); var addressConfirmed = (CustomerEmailAddressConfirmed)resultEvent; Assert.Equal(_customerId.Value, addressConfirmed.Id.Value); Assert.True(customer.IsEmailAddressConfirmed); }
private void __and_EmailAddressWasConfirmed() { currentState.Apply( new List <IEvent> { CustomerEmailAddressConfirmed.Build(customerID) } ); }
public void Reconstitute_EmailConfirmed_CustomerCreated() { // arrange var customerRegisteredEvent = CreateCustomerRegisteredEvent(); var customerEmailAddressConfirmedEvent = new CustomerEmailAddressConfirmed(_customerId); // act var reconstituteResult = Customer.Reconstitute( new List <IEvent> { customerRegisteredEvent, customerEmailAddressConfirmedEvent }); // assert Assert.True(reconstituteResult.IsEmailAddressConfirmed); }
ConfirmCustomerEmailAddress_CorrectHashAfterPreviousCorrectConfirmation_NoEventReturned() { // given var customerRegisteredEvent = CreateCustomerRegisteredEvent(); var customerEmailAddressConfirmedEvent = new CustomerEmailAddressConfirmed(_customerId); var customer = Customer.Reconstitute( new IEvent[] { customerRegisteredEvent, customerEmailAddressConfirmedEvent }); var confirmCustomerEmailAddress = new ConfirmCustomerEmailAddress( _customerId.Value.ToString(), _hash.Value.ToString()); // when var resultEvent = customer.ConfirmCustomerEmailAddress(confirmCustomerEmailAddress); // then Assert.Null(resultEvent); }
public void Reconstitute_EmailComfirmed_CustomerCreated() { // arrange var customerRegisteredEvent = CreateCustomerRegisteredEvent(); var customerEmailAddressConfirmedEvent = new CustomerEmailAddressConfirmed(_customerId); // act var reconstituteResult = Customer.Reconstitute( new List <IEvent> { customerRegisteredEvent, customerEmailAddressConfirmedEvent }); // assert Assert.Equal(_customerId.Value, reconstituteResult.Id.Value); Assert.Equal(_emailAddress.Value, reconstituteResult.EmailAddress.Value); Assert.Equal(_hash.Value, reconstituteResult.Hash.Value); Assert.Equal(_personName.GivenName, reconstituteResult.PersonName.GivenName); Assert.Equal(_personName.FamilyName, reconstituteResult.PersonName.FamilyName); }
private void __and_EmailAddressWasConfirmed() { registeredCustomer.Apply( CustomerEmailAddressConfirmed.Build(customerID) ); }
private void __and_EmailAddressWasConfirmed() { eventStream.Add(CustomerEmailAddressConfirmed.Build(customerID)); }