Beispiel #1
0
        public void CreateShouldReturnBuilder()
        {
            // Act.
            var config = CommandProcessorBuilder.Create();

            // Assert.
            Assert.NotNull(config);
        }
Beispiel #2
0
        public void BuildShouldCreateProcessor()
        {
            // Act.
            var processor = CommandProcessorBuilder.Create()
                            .Build();

            // Assert.
            Assert.NotNull(processor);
        }
Beispiel #3
0
        public void RegisterCommandHandlerShouldNotAllowMutlipleRegistrationsForTheSameCommand()
        {
            // Arrange.
            var config   = CommandProcessorBuilder.Create();
            var receiver = A.Fake <IMessagePump>();

            // Act.
            Assert.Throws <ProcessorConfigurationException>(() =>
            {
                config.RegisterCommandHandler <RemoveOrderCommandHandler>(receiver);
                config.RegisterCommandHandler <RemoveOrderCommandHandler>(receiver);
            });
        }
Beispiel #4
0
        public void RegisterCommandHandlerShouldRegisterHandlerForSessions()
        {
            // Arrange.
            var config   = CommandProcessorBuilder.Create();
            var receiver = A.Fake <ISessionMessagePump>();

            // Act.
            config.RegisterCommandHandler <RemoveOrderCommandHandler>(receiver);

            // Assert.
            Assert.True(config.Receivers.ContainsKey(receiver));
            Assert.Equal(2, config.Receivers[receiver].HandlerTypes.Count);
            Assert.True(config.Receivers[receiver].HandlerTypes[typeof(DeleteOrderCommand)][0] == typeof(RemoveOrderCommandHandler));
            Assert.True(config.Receivers[receiver].HandlerTypes[typeof(CancelOrderCommand)][0] == typeof(RemoveOrderCommandHandler));
        }
Beispiel #5
0
        public void GetReceiversShouldReturnEmptyIfNothingFound()
        {
            // Arrange.
            var receiver = A.Fake <IMessagePump>();
            var config   = CommandProcessorBuilder.Create().RegisterCommandHandlers(receiver, new[]
            {
                typeof(ConfirmOrderCommandHandler)
            });

            // Act.
            var Receivers = config.GetHandlerTypes(receiver, typeof(CancelOrderCommand));

            // Assert.
            Assert.True(config.Receivers.ContainsKey(receiver));
            Assert.Equal(0, Receivers.Count);
        }
Beispiel #6
0
        public void RegisterCommandHandlersShouldRegisterFluent()
        {
            // Arrange.
            var config   = CommandProcessorBuilder.Create();
            var receiver = A.Fake <IMessagePump>();

            // Act.
            config = config.RegisterCommandHandlers(receiver, cfg =>
                                                    cfg.With <RemoveOrderCommandHandler>()
                                                    .With <ConfirmOrderCommandHandler>());

            // Assert.
            Assert.True(config.Receivers.ContainsKey(receiver));
            Assert.Equal(3, config.Receivers[receiver].HandlerTypes.Count);
            Assert.True(config.Receivers[receiver].HandlerTypes[typeof(DeleteOrderCommand)][0] == typeof(RemoveOrderCommandHandler));
            Assert.True(config.Receivers[receiver].HandlerTypes[typeof(CancelOrderCommand)][0] == typeof(RemoveOrderCommandHandler));
            Assert.True(config.Receivers[receiver].HandlerTypes[typeof(ConfirmOrderCommand)][0] == typeof(ConfirmOrderCommandHandler));
        }