public IActionResult AddMatch(AddMatchVM model) { if (model.SelectedPlayer1Id == model.SelectedPlayer2Id) { ModelState.AddModelError("SelectedPlayer2Id", "Players cannot be the same!"); } if (model.SelectedPlayer1Sets == model.SelectedPlayer2Sets || (model.SelectedPlayer1Sets < 2 && model.SelectedPlayer2Sets < 2)) { ModelState.AddModelError("SelectedPlayer2Sets", "Incorrect Result! Matches are played in best of 3 sets."); } if (!ModelState.IsValid) { return(View(rep.PopulateLists())); } Match newMatch = new Match() { Player1Id = model.SelectedPlayer1Id, Player2Id = model.SelectedPlayer2Id, Player1Sets = model.SelectedPlayer1Sets, Player2Sets = model.SelectedPlayer2Sets, Date = DateTime.Now }; rep.AddMatch(newMatch); return(RedirectToAction(nameof(Index))); }
public AddMatchVM PopulateLists() { var players = GetPlayers(); var model = new AddMatchVM() { Sets = new SelectListItem[4], ListOfPlayers = new SelectListItem[players.Length] }; for (int i = 0; i < players.Length; i++) { var teamname = GetTeamName(players[i].TeamId); var text = $"{players[i].Name}"; model.ListOfPlayers[i] = new SelectListItem { Value = players[i].Id.ToString(), Text = text }; } model.Sets[0] = new SelectListItem { Value = "0", Text = "0" }; model.Sets[1] = new SelectListItem { Value = "1", Text = "1" }; model.Sets[2] = new SelectListItem { Value = "2", Text = "2" }; model.Sets[3] = new SelectListItem { Value = "3", Text = "3" }; return(model); }
public virtual void NewMatch(AddMatchVM model) { Match newMatch = new Match() { Player1Id = model.SelectedPlayer1Id, Player2Id = model.SelectedPlayer2Id, Player1Sets = model.SelectedPlayer1Sets, Player2Sets = model.SelectedPlayer2Sets, Date = DateTime.Now }; rep.AddMatch(newMatch); }
public void AddMatchTest() { //Arrange AddMatchVM model = new AddMatchVM(); var repositoryHandler = new Mock <RepositoryHandler>(); repositoryHandler.CallBase = true; repositoryHandler.Setup(m => m.isAdmin()).Returns(false); repositoryHandler.Setup(m => m.PopulateLists()).Returns(new AddMatchVM()); repositoryHandler.Setup(m => m.NewMatch(model)); //Act var controller = new HomeController(repositoryHandler.Object); var result = controller.AddMatch(model) as RedirectToActionResult; //Assert Assert.AreEqual("Index", result.ActionName); }
public IActionResult AddMatch(AddMatchVM model) { if (model.SelectedPlayer1Id == model.SelectedPlayer2Id) { ModelState.AddModelError("SelectedPlayer2Id", "Välj två olika spelare!"); } if (model.SelectedPlayer1Sets == model.SelectedPlayer2Sets) { ModelState.AddModelError("SelectedPlayer2Sets", "Felaktigt resultat! Matcher kan inte sluta lika!."); } if (!ModelState.IsValid) { return(View(repHandler.PopulateLists())); } repHandler.NewMatch(model); return(RedirectToAction(nameof(Index))); }