public async Task Create_AddPokemonToDb_InsertsPokemon() { var pokemon = new Pokemon() { Id = Guid.Parse("47b176a6-535f-447b-9f09-86465f07967a"), Name = "Evegenij", Avatar = "Evgavatar", Generation = 2, Height = 100, Weight = 100, Abilities = new List <PokemonAbility>() { new PokemonAbility() { Ability = new Ability() { Name = "Leaf strike" } } } }; // arrange var repository = new Mock <IRepository <Pokemon> >(); repository.Setup(x => x.Insert( It.IsAny <Pokemon>(), CancellationToken.None )).ReturnsAsync(pokemon.Id); var mapper = TestHelper.GetMapper(); var logger = new NullLogger <PokemonService>(); var loggerValidator = new Mock <ILogger <PokemonValidator> >(); var validator = new PokemonValidator(loggerValidator.Object); var service = new PokemonService(mapper: mapper, validator: validator, repository: repository.Object, logger: logger); // act var pokemonDTO = mapper.Map <PokemonDTO>(pokemon); var result = (await service.Create(pokemonDTO, CancellationToken.None)); // assert repository.Verify(x => x.Insert( It.IsAny <Pokemon>(), CancellationToken.None) , Times.Once); repository.VerifyNoOtherCalls(); }
public ActionResult Create(PokemonViewModel pokemon) { var service = new PokemonService(); Pokemon poker = new Pokemon() { Name = pokemon.Name, ImagePath = pokemon.ImagePath, CurrentHave = pokemon.CurrentHave, PokemonTypeId = pokemon.PokemonTypeId }; service.Create(poker); return(RedirectToAction("Index")); }