public void Edit_NullId()
        {
            //Arrange
            var mockRepository = new Mock <IClothingRepository>();
            var controller     = new WardrobeController(mockRepository.Object);
            int?id             = null;

            //Act
            var response = controller.Edit(id);

            //Assert
            Assert.IsType <NotFoundResult>(response);
        }
        public void Edit_ValidObject()
        {
            //Arrange
            int id       = 900729;
            var clothing = new Clothing()
            {
                Id = id, Name = "testName0", Material = "testMaterial0", Color = "testColor0", DateAdded = DateTime.Now
            };
            var mockRepository = new Mock <IClothingRepository>();

            mockRepository.Setup(repository => repository.GetById(id)).Returns(clothing);
            var controller = new WardrobeController(mockRepository.Object);

            //Act
            var response = controller.Edit(id, clothing);

            //Assert
            Assert.IsType <RedirectToActionResult>(response);
        }
        public void Edit_InvalidObject()
        {
            //Arrange
            int id       = 900729;
            var clothing = new Clothing()
            {
                Id = id, Name = "", Material = "testMaterial0", Color = "testColor0", DateAdded = DateTime.Now
            };
            var mockRepository = new Mock <IClothingRepository>();

            mockRepository.Setup(repository => repository.GetById(id)).Returns(clothing);
            var controller = new WardrobeController(mockRepository.Object);

            controller.ModelState.AddModelError("Name", "Required");

            //Act
            var response = controller.Edit(id, clothing);

            //Assert
            Assert.IsType <ViewResult>(response);
        }