public void TestThatHouseholdMemberAddCallsPublishOnCommandBus() { var fixture = new Fixture(); var mailAddress = fixture.Create <string>(); var translationInfoIdentifier = Guid.NewGuid(); var commandBusMock = MockRepository.GenerateMock <ICommandBus>(); commandBusMock.Stub(m => m.Publish <HouseholdMemberAddCommand, ServiceReceiptResponse>(Arg <HouseholdMemberAddCommand> .Is.NotNull)) .WhenCalled(e => { var command = (HouseholdMemberAddCommand)e.Arguments.ElementAt(0); Assert.That(command.MailAddress, Is.Not.Null); Assert.That(command.MailAddress, Is.Not.Empty); Assert.That(command.MailAddress, Is.EqualTo(mailAddress)); Assert.That(command.TranslationInfoIdentifier, Is.EqualTo(translationInfoIdentifier)); }) .Return(fixture.Create <ServiceReceiptResponse>()) .Repeat.Any(); var logicExecutor = new LogicExecutor(commandBusMock); Assert.That(logicExecutor, Is.Not.Null); logicExecutor.HouseholdMemberAdd(mailAddress, translationInfoIdentifier); commandBusMock.AssertWasCalled(m => m.Publish <HouseholdMemberAddCommand, ServiceReceiptResponse>(Arg <HouseholdMemberAddCommand> .Is.NotNull)); }
public void TestThatHouseholdMemberAddReturnsIdentifierFromServiceReceiptResponse() { var fixture = new Fixture(); var serviceReceipt = fixture.Create <ServiceReceiptResponse>(); var commandBusMock = MockRepository.GenerateMock <ICommandBus>(); commandBusMock.Stub(m => m.Publish <HouseholdMemberAddCommand, ServiceReceiptResponse>(Arg <HouseholdMemberAddCommand> .Is.Anything)) .Return(serviceReceipt) .Repeat.Any(); var logicExecutor = new LogicExecutor(commandBusMock); Assert.That(logicExecutor, Is.Not.Null); var result = logicExecutor.HouseholdMemberAdd(fixture.Create <string>(), Guid.NewGuid()); Assert.That(result, Is.EqualTo(serviceReceipt.Identifier)); }