Exemple #1
0
        public async Task TestGetByName_WhenRequestIsMade_ExpectApiClientWrapperCall(
            Mock <IPokeApiClientWrapper> pokeApiClientWrapperMock,
            string pokemonName,
            string originalDescription)
        {
            // Arrange
            var pokemonSpecies = PokemonSpeciesHelper.CreatePokemonSpecies(pokemonName, originalDescription, "en");

            SetupPokeApiClientWrapperMock(pokeApiClientWrapperMock, pokemonSpecies);
            var sutService = DIHelper.GetServices()
                             .RegisterMock(pokeApiClientWrapperMock)
                             .GetConfiguredService <IPokemonApiService>();

            // Act
            await sutService.GetByName(pokemonName, CancellationToken.None);

            // Assert
            pokeApiClientWrapperMock
            .Verify(wrapper => wrapper.GetResourceAsync <PokemonSpecies>(It.IsAny <string>(), It.IsAny <CancellationToken>()));
        }
Exemple #2
0
        public async Task TestGetByName_WithValidPokemonName_ExpectPokemonWithDescription(
            Mock <IPokeApiClientWrapper> pokeApiClientWrapperMock,
            string pokemonName,
            string expectedDescription)
        {
            var pokemonSpecies = PokemonSpeciesHelper.CreatePokemonSpecies(pokemonName, expectedDescription, "en");

            SetupPokeApiClientWrapperMock(pokeApiClientWrapperMock, pokemonSpecies);
            var sutService = DIHelper.GetServices()
                             .RegisterMock(pokeApiClientWrapperMock)
                             .GetConfiguredService <IPokemonApiService>();

            // Act
            var pokemon = await sutService.GetByName(pokemonName, CancellationToken.None)
                          .ConfigureAwait(false);

            // Assert
            Assert.NotNull(pokemon);
            Assert.Equal(pokemonName, pokemon.Name);
            Assert.Equal(expectedDescription, pokemon.OriginalDescription);
        }
Exemple #3
0
        public async Task TestGetByName_WithDescriptionContainingLineBreaks_ExpectParsedDescription(
            Mock <IPokeApiClientWrapper> pokeApiClientWrapperMock,
            string pokemonName)
        {
            // Arrange
            const string originalDescription = "expected\ndescription\nwith some\nline breaks.";
            const string expectedDescription = "expected description with some line breaks.";

            var pokemonSpecies = PokemonSpeciesHelper.CreatePokemonSpecies(pokemonName, originalDescription, "en");

            SetupPokeApiClientWrapperMock(pokeApiClientWrapperMock, pokemonSpecies);
            var sutService = DIHelper.GetServices()
                             .RegisterMock(pokeApiClientWrapperMock)
                             .GetConfiguredService <IPokemonApiService>();

            // Act
            var pokemon = await sutService.GetByName(pokemonName, CancellationToken.None)
                          .ConfigureAwait(false);

            // Assert
            Assert.NotNull(pokemon);
            Assert.Equal(pokemonName, pokemon.Name);
            Assert.Equal(expectedDescription, pokemon.OriginalDescription);
        }