Exemplo n.º 1
0
        public CreateCharacterTests()
        {
            var characterRepositoryMock = new Mock <ICharacterSystemCharacterRepository>();

            characterRepositoryMock
            .Setup(a => a.CharacterExistsWithName(It.IsAny <string>()))
            .ReturnsAsync((string name) => name.Equals(_alreadyExistingName));
            characterRepositoryMock
            .Setup(a => a.AddCharacter(It.IsAny <Character>()))
            .Returns(Task.CompletedTask)
            .Callback((Character character) => _addedCharacter = character);
            _characterRepository = characterRepositoryMock.Object;
            _handler             = new CreateCharacterCommandHandler(_characterRepository);
        }
        public async Task Create_character_command_handler_should_return_id_of_created_character()
        {
            // Arrange
            var episode        = new EpisodeBuilder().Generate().SaveChanges(_testFixture.Context).Build().First();
            var commandHandler = new CreateCharacterCommandHandler(_testFixture.Context, _testFixture.Mapper);

            // Act
            var response =
                await commandHandler.Handle(new CreateCharacterCommand
                                            { Name = "test char", EpisodesIds = new [] { episode.Id }, FriendsIds = new int[] {} }, CancellationToken.None);

            // Assert
            response.ShouldBeOfType(typeof(int));
        }