public void ShouldThrowDomainEventMapperNotFoundException()
        {
            var domainEventMappingCollection = new NServiceBusEventMappings();
            var domainEvent = new AccommodationLeadApproved
            {
                ID = Guid.NewGuid()
            };

            domainEventMappingCollection.GetMappedObjectFor(domainEvent);
        }
Exemple #2
0
        public void ShouldReturnABusEventForAccommodationLeadApproved()
        {
            var id          = Guid.NewGuid();
            var mapper      = new AccommodationLeadApprovedMapper();
            var domainEvent = new AccommodationLeadApproved
            {
                ID = id
            };

            Assert.That(mapper.Map(domainEvent), Is.TypeOf <Messages.Events.AccommodationLeadApproved>());
        }
        public void ShouldLocateAnExistingMapperUsingASuppliedDomainEventType()
        {
            var domainEventMappingCollection = new NServiceBusEventMappings();

            domainEventMappingCollection.AddMapper(
                new AccommodationLeadApprovedMapper());

            var domainEvent = new AccommodationLeadApproved
            {
                ID = Guid.NewGuid()
            };

            var mappedEvent =
                domainEventMappingCollection.GetMappedObjectFor(domainEvent);

            Assert.That(mappedEvent, Is.TypeOf <Messages.Events.AccommodationLeadApproved>());
        }
Exemple #4
0
        public void ShouldPublishEvent()
        {
            var mockBus = MockRepository.GenerateMock <IBus>();
            var domainEventMappingCollection = new NServiceBusEventMappings();

            domainEventMappingCollection.AddMapper(new AccommodationLeadApprovedMapper());
            var eventPublisher = new NServiceBusEventPublisher(mockBus, domainEventMappingCollection);
            var domainEvent    = new AccommodationLeadApproved
            {
                ID = Guid.NewGuid()
            };

            eventPublisher.Publish(domainEvent);
            //Already tested that the correct event should be being published here where the
            //DomainEventMappingTests
            mockBus.AssertWasCalled(x => x.Publish(Arg <IEvent> .Is.Anything));
        }
Exemple #5
0
        public void ShouldUpdateTheAccommodationLeadWithApprovedStatus()
        {
            var id = Guid.NewGuid();

            Repository.Stub(x => x.GetAccommodationLeadById(id)).Return(new AccommodationLead());
            Repository.Stub(x => x.Save(default(AccommodationLead))).IgnoreArguments()
            .WhenCalled(args =>
            {
                var leadToSave = args.Arguments[0] as AccommodationLead;
                Assert.That(leadToSave.Approved, Is.True);
            });


            var handler = new AccommodationLeadApproved(Repository);
            var @event  = new Messages.Events.AccommodationLeadApproved
            {
                AccLeadId = id
            };

            handler.Handle(@event);
        }
Exemple #6
0
 private void Apply(AccommodationLeadApproved @event)
 {
     _approved = true;
 }