Beispiel #1
0
        public async void given_CreateSingleUserCommand_handler_should_have_correct_command_type()
        {
            // Assemble
            CreateUserInputDTO input = new CreateUserInputDTO
            {
                FirstName      = "test",
                LastName       = "testLastName",
                Email          = "testEmail",
                Position       = "testPosition",
                Department     = "testDepartment",
                IsAdmin        = true,
                IsActive       = true,
                PermissionList = new Dictionary <Guid, PermissionDetails>()
            };
            var command = new CreateSingleUserCommand(input);
            var mockAgg = new CreateSingleUserCommandHandlerMockAggregate();

            mockAgg.setup_session_to_ensure_addAndCommit_are_called();
            var handler = mockAgg.HandlerFactory();

            // Apply
            var result = await handler.Handle(command);

            // Assert
            Assert.True(mockAgg.SessionAddWasCalled);
            Assert.True(mockAgg.SessionCommitWasCalled);
        }
Beispiel #2
0
        public async Task <UserDTO> CreateUser([FromBody] CreateUserInputDTO input)
        {
            var message = new CreateSingleUserCommand(input);
            var result  = await _commandDispatcher.Execute(message);

            return(result);
        }
Beispiel #3
0
        public async void given_create_user_command_command_dispatcher_should_get_same_command_created_in_controller()
        {
            //Assemble
            var mockAgg = new UserControllerMockAggregate();


            var input = new CreateUserInputDTO()
            {
                FirstName = "testFName",
                LastName  = "testLName"
            };

            var command = new CreateSingleUserCommand(input);

            mockAgg.setup_dispatcher_to_verify_createUserCommands_are_the_same(command);

            var controller = mockAgg.CreateUserController();

            //Apply
            var result = await controller.CreateUser(input);

            //Assert
            Assert.IsType <UserDTO>(result);
            Assert.Equal(result.FirstName, input.FirstName);
            Assert.Equal(result.LastName, input.LastName);
        }
Beispiel #4
0
 public void setup_dispatcher_to_verify_createUserCommands_are_the_same(CreateSingleUserCommand command)
 {
     CommandDispatcherMock.Setup(a => a.Execute(It.IsAny <CreateSingleUserCommand>()))
     .Callback <ICommand <UserDTO> >((a) => { UserCommand = (CreateSingleUserCommand)a; })
     .ReturnsAsync(new UserDTO()
     {
         FirstName = command.Input.FirstName,
         LastName  = command.Input.LastName
     });
 }