示例#1
0
            public void GetAll_ExpectAllRecipes()
            {
                //arrange
                Models.ICookbookContext       context    = base.AddTestData(new TestContext());
                Controllers.RecipesController controller = new Controllers.RecipesController(context);
                //act

                var result = controller.GetRecipes() as TestRecipeDbSet;

                Assert.IsNotNull(result);
                Assert.AreEqual(2, result.Local.Count);
            }
示例#2
0
            public void Get_ExpectOneRecipe()
            {
                //arrange -- done in base class
                Models.ICookbookContext       context    = AddTestData(new TestContext());
                Controllers.RecipesController controller = new Controllers.RecipesController(context);

                //act
                var result = controller.GetRecipe(1) as OkNegotiatedContentResult <Models.Recipe>;

                //assert
                Assert.IsNotNull(result);
                Assert.AreEqual(1, result.Content.RecipeId);
            }
示例#3
0
            public void Put_ExpectFailWhenDifferentId()
            {
                //arrange
                Models.ICookbookContext       context    = base.AddTestData(new TestContext());
                Controllers.RecipesController controller = new Controllers.RecipesController(context);

                //act
                var result = controller.PutRecipe(999, new Models.Recipe {
                    RecipeId = 4, Title = "BAD"
                });

                //assert
                Assert.IsInstanceOfType(result, typeof(BadRequestResult));
            }
示例#4
0
            public void Post_ExpectSameRecipe()
            {
                //arrange
                Models.Recipe newRecipe = new Models.Recipe()
                {
                    RecipeId = 33,
                    Title    = "Test post"
                };
                Models.ICookbookContext       context    = AddTestData(new TestContext());
                Controllers.RecipesController controller = new Controllers.RecipesController(context);

                //act
                var result = controller.PostRecipe(newRecipe) as CreatedAtRouteNegotiatedContentResult <Models.Recipe>;

                //assert
                Assert.IsNotNull(result);
                Assert.AreEqual(result.RouteName, "DefaultApi");
                Assert.AreEqual(result.RouteValues["Id"], result.Content.RecipeId);
                Assert.AreEqual(result.Content.Title, newRecipe.Title);
            }
示例#5
0
            public void Put_ExpectStatusCode()
            {
                //arrange
                Models.Recipe recipe = new Models.Recipe()
                {
                    RecipeId = 1,
                    Title    = "Edited recipe"
                };
                int id = 1;

                Models.ICookbookContext       context    = AddTestData(new TestContext());
                Controllers.RecipesController controller = new Controllers.RecipesController(context);

                //act
                var result = controller.PutRecipe(id, recipe) as StatusCodeResult;

                //assert
                Assert.IsNotNull(result);
                Assert.IsInstanceOfType(result, typeof(StatusCodeResult));
                Assert.AreEqual(HttpStatusCode.NoContent, result.StatusCode);
            }