public void Can_Edit_Game() { // Организация - создание имитированного хранилища данных Mock<IGameRepository> mock = new Mock<IGameRepository>(); mock.Setup(m => m.Games).Returns(new List<Game> { new Game { GameId = 1, Name = "Игра1"}, new Game { GameId = 2, Name = "Игра2"}, new Game { GameId = 3, Name = "Игра3"}, new Game { GameId = 4, Name = "Игра4"}, new Game { GameId = 5, Name = "Игра5"} }); // Организация - создание контроллера AdminController controller = new AdminController(mock.Object); // Действие Game game1 = controller.Edit(1).ViewData.Model as Game; Game game2 = controller.Edit(2).ViewData.Model as Game; Game game3 = controller.Edit(3).ViewData.Model as Game; // Assert Assert.AreEqual(1, game1.GameId); Assert.AreEqual(2, game2.GameId); Assert.AreEqual(3, game3.GameId); }
public void CanSaveValidChanges() { Mock<IGameRepository> mock = new Mock<IGameRepository>(); AdminController controller = new AdminController(mock.Object); Game game = new Game { Name = "Test" }; ActionResult result = controller.Edit(game); mock.Verify(m => m.SaveGame(game)); Assert.IsNotInstanceOfType(result, typeof(ViewResult)); }
public void CannotSaveInvalidChanges() { Mock<IGameRepository> mock = new Mock<IGameRepository>(); AdminController controller = new AdminController(mock.Object); Game game = new Game { Name = "Test" }; controller.ModelState.AddModelError("error", "error"); ActionResult result = controller.Edit(game); mock.Verify(m => m.SaveGame(It.IsAny<Game>()), Times.Never()); Assert.IsInstanceOfType(result, typeof(ViewResult)); }
public void IndexContainsAllGames() { Mock<IGameRepository> mock = new Mock<IGameRepository>(); mock.Setup(m => m.Games).Returns(new List<Game> { new Game { GameId = 1, Name = "Game 1"}, new Game { GameId = 2, Name = "Game 2"}, new Game { GameId = 3, Name = "Game 3"}, new Game { GameId = 4, Name = "Game 4"}, new Game { GameId = 5, Name = "Game 5"} }); AdminController controller = new AdminController(mock.Object); List<Game> res = ((IEnumerable<Game>)controller.Index() .ViewData.Model).ToList(); Assert.AreEqual(res.Count(), 5); Assert.AreEqual("Game 1", res[0].Name); Assert.AreEqual("Game 2", res[1].Name); Assert.AreEqual("Game 3", res[2].Name); }
public void Cannot_Edit_Nonexistent_Game() { // Организация - создание имитированного хранилища данных Mock<IGameRepository> mock = new Mock<IGameRepository>(); mock.Setup(m => m.Games).Returns(new List<Game> { new Game { GameId = 1, Name = "Игра1"}, new Game { GameId = 2, Name = "Игра2"}, new Game { GameId = 3, Name = "Игра3"}, new Game { GameId = 4, Name = "Игра4"}, new Game { GameId = 5, Name = "Игра5"} }); // Организация - создание контроллера AdminController controller = new AdminController(mock.Object); // Действие Game result = controller.Edit(6).ViewData.Model as Game; // Assert }
public void CanEdit() { Mock<IGameRepository> mock = new Mock<IGameRepository>(); mock.Setup(m => m.Games).Returns(new List<Game> { new Game { GameId = 1, Name = "Game 1"}, new Game { GameId = 2, Name = "Game 2"}, new Game { GameId = 3, Name = "Game 3"}, new Game { GameId = 4, Name = "Game 4"}, new Game { GameId = 5, Name = "Game 5"} }); AdminController controller = new AdminController(mock.Object); Game game1 = controller.Edit(1).ViewData.Model as Game; Game game2 = controller.Edit(2).ViewData.Model as Game; Game game3 = controller.Edit(3).ViewData.Model as Game; Assert.AreEqual(1, game1.GameId); Assert.AreEqual(2, game2.GameId); Assert.AreEqual(3, game3.GameId); }
public void Cannot_Save_Invalid_Changes() { // Организация - создание имитированного хранилища данных Mock<IGameRepository> mock = new Mock<IGameRepository>(); // Организация - создание контроллера AdminController controller = new AdminController(mock.Object); // Организация - создание объекта Game Game game = new Game { Name = "Test" }; // Организация - добавление ошибки в состояние модели controller.ModelState.AddModelError("error", "error"); // Действие - попытка сохранения товара ActionResult result = controller.Edit(game); // Утверждение - проверка того, что обращение к хранилищу НЕ производится mock.Verify(m => m.SaveGame(It.IsAny<Game>()), Times.Never()); // Утверждение - проверка типа результата метода Assert.IsInstanceOfType(result, typeof(ViewResult)); }
public void Can_Delete_Valid_Games() { // Организация - создание объекта Game Game game = new Game { GameId = 2, Name = "Игра2" }; // Организация - создание имитированного хранилища данных Mock<IGameRepository> mock = new Mock<IGameRepository>(); mock.Setup(m => m.Games).Returns(new List<Game> { new Game { GameId = 1, Name = "Игра1"}, new Game { GameId = 2, Name = "Игра2"}, new Game { GameId = 3, Name = "Игра3"}, new Game { GameId = 4, Name = "Игра4"}, new Game { GameId = 5, Name = "Игра5"} }); // Организация - создание контроллера AdminController controller = new AdminController(mock.Object); // Действие - удаление игры controller.Delete(game.GameId); // Утверждение - проверка того, что метод удаления в хранилище // вызывается для корректного объекта Game mock.Verify(m => m.DeleteGame(game.GameId)); }
public void Can_Save_Valid_Changes() { // Организация - создание имитированного хранилища данных Mock<IGameRepository> mock = new Mock<IGameRepository>(); // Организация - создание контроллера AdminController controller = new AdminController(mock.Object); // Организация - создание объекта Game Game game = new Game { Name = "Test" }; // Действие - попытка сохранения товара ActionResult result = controller.Edit(game); // Утверждение - проверка того, что к хранилищу производится обращение mock.Verify(m => m.SaveGame(game)); // Утверждение - проверка типа результата метода Assert.IsNotInstanceOfType(result, typeof(ViewResult)); }
public void Index_Contains_All_Games() { // Организация - создание имитированного хранилища данных Mock<IGameRepository> mock = new Mock<IGameRepository>(); mock.Setup(m => m.Games).Returns(new List<Game> { new Game { GameId = 1, Name = "Игра1"}, new Game { GameId = 2, Name = "Игра2"}, new Game { GameId = 3, Name = "Игра3"}, new Game { GameId = 4, Name = "Игра4"}, new Game { GameId = 5, Name = "Игра5"} }); // Организация - создание контроллера AdminController controller = new AdminController(mock.Object); // Действие List<Game> result = ((IEnumerable<Game>)controller.Index(). ViewData.Model).ToList(); // Утверждение Assert.AreEqual(result.Count(), 5); Assert.AreEqual("Игра1", result[0].Name); Assert.AreEqual("Игра2", result[1].Name); Assert.AreEqual("Игра3", result[2].Name); }