Esempio n. 1
0
        public void Controller_Avatar_Update_Get_Should_Return_New_Model()
        {
            // Arrange (from create)
            AvatarItemController controller = new AvatarItemController();

            var context = CreateMoqSetupForCookie();

            controller.ControllerContext = new ControllerContext(context, new RouteData(), controller);

            var data = new AvatarItemModel
            {
                Description = "description",
                Id          = "abc",
                Name        = "Name",
                Uri         = "picture"
            };
            // create test avatar
            var result = (RedirectToRouteResult)controller.Create(data);

            // Check that the item is created (from create)
            var resultAvatar = AvatarItemBackend.Instance.Read("abc");

            Assert.AreEqual(data.Id, resultAvatar.Id, TestContext.TestName);

            // Act
            var updateResult = controller.Update(data.Id) as ViewResult;

            resultAvatar = updateResult.Model as AvatarItemModel;

            // Assert
            Assert.AreNotEqual(null, resultAvatar.Id, TestContext.TestName);

            // Reset the Avatars
            AvatarItemBackend.Instance.Reset();
        }
Esempio n. 2
0
        public void Controller_Avatar_Create_Post_Valid_Should_Return_Index_Page()
        {
            // Arrange
            AvatarItemController controller = new AvatarItemController();

            var data = new AvatarItemModel
            {
                Description = "description",
                Id          = "abc",
                Name        = "Name",
                Uri         = "picture"
            };

            var context = CreateMoqSetupForCookie();

            controller.ControllerContext = new ControllerContext(context, new RouteData(), controller);

            // Act
            var result = (RedirectToRouteResult)controller.Create(data);

            var resultAvatar = AvatarItemBackend.Instance.Read("abc");

            // Reset the Avatars
            AvatarItemBackend.Instance.Reset();

            // Assert
            Assert.AreEqual("Index", result.RouteValues["action"], TestContext.TestName);

            // Check that the item is created
            Assert.AreEqual(data.Id, resultAvatar.Id, TestContext.TestName);
            // No need to check the route, Assert.AreEqual("Avatar", result.RouteValues["route"], TestContext.TestName);
        }
Esempio n. 3
0
        public void Controller_Avatar_Create_Get_Should_Return_New_Model()
        {
            // Arrange
            AvatarItemController controller = new AvatarItemController();

            var context = CreateMoqSetupForCookie();

            controller.ControllerContext = new ControllerContext(context, new RouteData(), controller);

            // Act
            ViewResult result = controller.Create() as ViewResult;

            var resultAvatar = result.Model as AvatarItemModel;

            // Assert
            Assert.AreNotEqual(null, resultAvatar.Id, TestContext.TestName);
        }
Esempio n. 4
0
        public void Controller_Avatar_Create_Post_InValid_Should_Return_Error_Page()
        {
            /// <summary>
            /// This Test calls the create, but passes null data
            /// The controller will return a redirect to the error home page
            /// So the test needs to cast the return to a redirect, and then check that it got to the home error page
            /// </summary>

            // Arrange
            AvatarItemController controller = new AvatarItemController();

            var context = CreateMoqSetupForCookie();

            controller.ControllerContext = new ControllerContext(context, new RouteData(), controller);

            // Act
            var result = (RedirectToRouteResult)controller.Create(null);

            // Assert
            Assert.AreEqual("Error", result.RouteValues["action"], TestContext.TestName);
        }
Esempio n. 5
0
        public void Controller_Avatar_Create_Post_InValid_Model_Should_Return_Error()
        {
            // Arrange
            var controller = new AvatarItemController();

            var data = new AvatarItemModel
            {
                Description = "description"
            };

            // Make a model error then try to send it as a Avatar
            controller.ModelState.AddModelError("test", "test");

            var context = CreateMoqSetupForCookie();

            controller.ControllerContext = new ControllerContext(context, new RouteData(), controller);

            // Act
            ViewResult result = controller.Create(data) as ViewResult;

            // Assert
            Assert.AreEqual(controller.ModelState.IsValid, false, TestContext.TestName);
        }
Esempio n. 6
0
        public void Controller_Avatar_Create_Post_Invalid_Null_Id_Should_Return_Model()
        {
            // Arrange
            AvatarItemController controller = new AvatarItemController();
            var data = new AvatarItemModel
            {
                Description = "description",
                Id          = null,
                Name        = "Name",
                Uri         = "picture"
            };

            var context = CreateMoqSetupForCookie();

            controller.ControllerContext = new ControllerContext(context, new RouteData(), controller);

            // Act
            ViewResult result = controller.Create(data) as ViewResult;

            var resultAvatar = result.Model as AvatarItemModel;

            // Assert
            Assert.AreEqual(data.Description, resultAvatar.Description, TestContext.TestName);
        }