コード例 #1
0
        public async Task can_decorate_a_handler_without_response_to_return_default_response()
        {
            // given

            var handlerMock = new Mock <IHandler <RequestWithNoResponse> >();

            var builder = new ContainerBuilder();

            BuildRegistration.Instance(handlerMock.Object)
            .WithDefaultResponse()
            .RegisterAsHandlerIn(builder);

            builder.RegisterType <HandlerMediator>()
            .AsSelf();

            using (var container = builder.Build())
            {
                var request = new RequestWithNoResponse();

                // when

                var response = await container
                               .Resolve <HandlerMediator>()
                               .Handle(request);

                // then

                response.Should().BeSameAs(Nothing.Value);

                handlerMock.Verify(handler => handler.Handle(request), Times.Once);
            }
        }
コード例 #2
0
        public void can_map_a_resolved_type()
        {
            // given

            var builder = new ContainerBuilder();

            var someInstance = new SomeType();

            BuildRegistration.Instance(someInstance)
            .Select(someType => new SomeTypeWrapper {
                SomeType = someType
            })
            .RegisterIn(builder);

            using (var container = builder.Build())
            {
                // when

                var result = container.Resolve <SomeTypeWrapper>();

                // then

                result.SomeType.Should().BeSameAs(someInstance);
            }
        }
コード例 #3
0
        public void set_up()
        {
            _handlerWithResponseMock   = new Mock <IHandler <RequestWithResponse, Response> >();
            _handlerWithNoResponseMock = new Mock <IHandler <RequestWithNoResponse, Nothing> >();

            var builder = new ContainerBuilder();

            BuildRegistration.Instance(_handlerWithResponseMock.Object)
            .RegisterAsHandlerIn(builder);

            BuildRegistration.Instance(_handlerWithNoResponseMock.Object)
            .RegisterAsHandlerIn(builder);

            builder.RegisterType <HandlerMediator>();

            _container = builder.Build();

            _mediator = _container.Resolve <HandlerMediator>();
        }
コード例 #4
0
        public void can_resolve_an_instance()
        {
            // given

            var builder = new ContainerBuilder();

            var someInstance = new SomeType();

            BuildRegistration.Instance(someInstance)
            .RegisterIn(builder);

            using (var container = builder.Build())
            {
                // when

                var result = container.Resolve <SomeType>();

                // then

                result.Should().BeSameAs(someInstance);
            }
        }