예제 #1
0
        public void TestCreateRecipeValidInput()
        {
            //Arrange
            List <RecipeItemLineVM> recipeLines = new List <RecipeItemLineVM>();
            RecipeItemLineVM        burger      = new RecipeItemLineVM(100000, 100000, "Patty", 1, "Whole");
            RecipeItemLineVM        bun         = new RecipeItemLineVM(100001, 100000, "Bun", 1, "Whole");

            recipeLines.Add(burger);
            recipeLines.Add(bun);
            Recipe recipe = new Recipe(100010, "Test", "Test Recipe.", DateTime.Now, true, recipeLines);

            Item item = new Item(100000, null, false, null, "Food", "Test Recipe.", 0, "Test", 0, new DateTime(2008, 11, 11), true);

            Offering offering = new Offering(100000, "Item", 100000, "Test", (decimal)30, true);

            //Act
            int    id        = _recipeManager.CreateRecipe(recipe, item, offering);
            Recipe newRecipe = _recipeManager.RetrieveRecipeByID(100010);

            //Assert
            Assert.AreEqual(100010, id);
            Assert.IsNotNull(newRecipe);
        }
예제 #2
0
        public IActionResult SaveRecipe([FromBody] Recipe recipe)
        {
            if (recipe == null || recipe.Data == null ||
                recipe.Id < 0 || string.IsNullOrEmpty(recipe.Data.Name))
            {
                return(BadRequest());
            }

            if (recipe.Id == 0)
            {
                _recipeManager.CreateRecipe(recipe);
            }
            else
            {
                var dbRecipe = _recipeManager.GetRecipe(recipe.Id);
                if (dbRecipe == null)
                {
                    return(NotFound());
                }
                _recipeManager.UpdateRecipe(recipe);
            }
            return(Ok(_recipeManager.GetRecipe(recipe.Id)));
        }