Exemplo n.º 1
0
        public async Task TestEditRecipeStepToItem()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var recipeStepRepository = new EfRepository <RecipeStep>(new ApplicationDbContext(options.Options));
            var itemRepository       = new EfRepository <Item>(new ApplicationDbContext(options.Options));

            recipeStepRepository.AddAsync(new RecipeStep {
                Description = "Testing description", Minutes = 10
            }).GetAwaiter().GetResult();
            recipeStepRepository.SaveChangesAsync().GetAwaiter().GetResult();

            itemRepository.AddAsync(new Item {
                Name = "Meatball"
            }).GetAwaiter().GetResult();
            itemRepository.SaveChangesAsync().GetAwaiter().GetResult();

            var item       = itemRepository.All().Where(x => x.Name == "Meatball").FirstOrDefault();
            var recipeStep = recipeStepRepository.All().Where(x => x.Description == "Testing description").FirstOrDefault();

            var recipeStepService = new RecipeStepService(itemRepository, recipeStepRepository);

            await recipeStepService.AddRecipeStepToItem(recipeStep.Description, recipeStep.Minutes, item.Name);

            await recipeStepService.EditRecipeToItem("Testing another description", 15, item.Name, 1);

            Assert.Equal(15, recipeStep.Minutes);
            Assert.Equal("Testing another description", recipeStep.Description);
        }
Exemplo n.º 2
0
        public void TestGetRecipeStepById()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var recipeStepRepository = new EfRepository <RecipeStep>(new ApplicationDbContext(options.Options));
            var itemRepository       = new EfRepository <Item>(new ApplicationDbContext(options.Options));

            recipeStepRepository.AddAsync(new RecipeStep {
                Description = "Testing description", Minutes = 10
            }).GetAwaiter().GetResult();
            recipeStepRepository.SaveChangesAsync().GetAwaiter().GetResult();

            var recipeStepService = new RecipeStepService(itemRepository, recipeStepRepository);

            AutoMapperConfig.RegisterMappings(typeof(MyTestRecipeStep).Assembly);

            var recipeStep = recipeStepService.GetById <MyTestRecipeStep>(1);

            Assert.Equal("Testing description", recipeStep.Description);
            Assert.Equal(10, recipeStep.Minutes);
        }