Пример #1
0
        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));
        }
Пример #2
0
        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));
        }