예제 #1
0
 public void ClearDb()
 {
     using (var context = new MyRecipesContext(options))
     {
         context.Recipe.RemoveRange(context.Recipe);
         context.SaveChanges();
     };
 }
예제 #2
0
 public RecipeToRecipeResponse(
     MyRecipesContext context,
     IMapper <Link, LinkResponse> linkMapper,
     IMapper <Ingredient, IngredientResponse> ingredientMapper,
     IMapper <RecipeInstruction, RecipeInstructionResponse> recipeInstructinMapper)
 {
     _context                 = context;
     _linkMapper              = linkMapper;
     _ingredientMapper        = ingredientMapper;
     _recipeInstructionMapper = recipeInstructinMapper;
 }
예제 #3
0
        public async Task TestGetRecipeTag()
        {
            using (var context = new MyRecipesContext(options))
            {
                RecipesController recipeController = new RecipesController(context, configuration);
                var result = await recipeController.GetTagsRecipe("");

                // Assert
                Assert.IsNotNull(result);
                Assert.IsInstanceOfType(result, typeof(List <Recipe>));
            }
        }
예제 #4
0
        public async Task TestDeleteFailRecipe()
        {
            using (var context = new MyRecipesContext(options))
            {
                RecipesController recipeController = new RecipesController(context, configuration);
                IActionResult     failResult       = await recipeController.DeleteRecipe(4) as IActionResult;

                // Assert
                Assert.IsNotNull(failResult);
                Assert.IsInstanceOfType(failResult, typeof(NotFoundResult));
            }
        }
예제 #5
0
        public async Task TestGetRecipeId()
        {
            using (var context = new MyRecipesContext(options))
            {
                string name    = "getRecipe";
                Recipe recipe1 = context.Recipe.Where(x => x.Name == recipeNames[0]).Single();
                recipe1.Name = name;
                RecipesController recipeController = new RecipesController(context, configuration);
                IActionResult     okResult         = await recipeController.GetRecipe(recipe1.Id) as IActionResult;

                // Assert
                Assert.IsNotNull(okResult);
                Assert.IsInstanceOfType(okResult, typeof(OkObjectResult));
            }
        }
예제 #6
0
        public async Task TestGetRecipe()
        {
            using (var context = new MyRecipesContext(options))
            {
                string name    = "getRecipe";
                Recipe recipe1 = context.Recipe.Where(x => x.Name == recipeNames[0]).Single();
                recipe1.Name = name;
                RecipesController recipeController = new RecipesController(context, configuration);
                var okResult = recipeController.GetRecipe();

                // Assert
                Assert.IsNotNull(okResult);
                Assert.IsInstanceOfType(okResult, typeof(IEnumerable <Recipe>));
            }
        }
예제 #7
0
        public async Task TestPostRecipe()
        {
            using (var context = new MyRecipesContext(options))
            {
                Recipe recipe = new Recipe();


                RecipesController recipeController = new RecipesController(context, configuration);
                IActionResult     okResult         = await recipeController.PostRecipe(recipe) as IActionResult;


                // Assert
                Assert.IsNotNull(okResult);
                Assert.IsInstanceOfType(okResult, typeof(CreatedAtActionResult));
            }
        }
예제 #8
0
        public async Task TestPutRecipeUpdate()
        {
            using (var context = new MyRecipesContext(options))
            {
                // Given
                string name    = "putRecipe";
                Recipe recipe1 = context.Recipe.Where(x => x.Name == recipeNames[0]).Single();
                recipe1.Name = name;

                // When
                RecipesController recipeController = new RecipesController(context, configuration);
                IActionResult     result           = await recipeController.PutRecipe(recipe1.Id, recipe1) as IActionResult;

                // Then
                recipe1 = context.Recipe.Where(x => x.Name == name).Single();
            }
        }
예제 #9
0
 public async Task TestUploadFileFail()
 {
     using (var context = new MyRecipesContext(options))
     {
         RecipeImage image = new RecipeImage();
         try
         {
             RecipesController recipeController = new RecipesController(context, configuration);
             IActionResult     okResult         = await recipeController.UploadRecipe(image) as IActionResult;
         }
         catch (Exception e)
         {
             // Assert
             Assert.IsInstanceOfType(e, typeof(ArgumentException));
         }
     }
 }
예제 #10
0
        public async Task TestPutRecipeNoContentStatusCode()
        {
            using (var context = new MyRecipesContext(options))
            {
                // Given
                string name    = "putRecipe";
                Recipe recipe1 = context.Recipe.Where(x => x.Name == recipeNames[0]).Single();
                recipe1.Name = name;

                // When
                RecipesController recipeController = new RecipesController(context, configuration);
                IActionResult     result           = await recipeController.PutRecipe(recipe1.Id, recipe1) as IActionResult;

                // Then
                Assert.IsNotNull(result);
                Assert.IsInstanceOfType(result, typeof(NoContentResult));
            }
        }
예제 #11
0
        public void SetupDb()
        {
            using (var context = new MyRecipesContext(options))
            {
                Recipe recipe1 = new Recipe()
                {
                    Name = recipeNames[0]
                };

                Recipe recipe2 = new Recipe()
                {
                    Name = recipeNames[1]
                };

                context.Recipe.Add(recipe1);
                context.Recipe.Add(recipe2);
                context.SaveChanges();
            }
        }
예제 #12
0
 public async Task TestPostRecipeAlreadyExist()
 {
     using (var context = new MyRecipesContext(options))
     {
         string name    = "postRecipe";
         Recipe recipe1 = context.Recipe.Where(x => x.Name == recipeNames[0]).Single();
         recipe1.Name = name;
         try
         {
             RecipesController recipeController = new RecipesController(context, configuration);
             IActionResult     okResult         = await recipeController.PostRecipe(recipe1) as IActionResult;
         }
         catch (Exception e)
         {
             // Assert
             Assert.IsInstanceOfType(e, typeof(ArgumentException));
         }
     }
 }
예제 #13
0
 public RecipeService(IMapper <Recipe, RecipeResponse> mapper, MyRecipesContext context)
 {
     _mapper  = mapper;
     _context = context;
 }
예제 #14
0
 public CategoriesController(MyRecipesContext context)
 {
     _context = context;
 }
예제 #15
0
 public UsersRepository(MyRecipesContext context)
 {
     Context = context;
 }
 public RecipeCommentsRepository(MyRecipesContext context)
 {
     Context = context;
 }
 public RecipeLikesRepository(MyRecipesContext context)
 {
     Context = context;
 }
예제 #18
0
 public LogsRepository(MyRecipesContext context)
 {
     Context = context;
 }
예제 #19
0
 public RecipesController(MyRecipesContext context, IConfiguration configuration)
 {
     _context       = context;
     _configuration = configuration;
 }