Example #1
0
        public void EditTeam_EditExistingTeamWithId_ReturnsTrue()
        {
            //Arrange
            var existingTeam = new Team {
                Id = 1, Name = "Random", KnownName = "Random"
            };
            bool expectedResult = true;

            //Act
            bool actualResult = _sut.EditTeam(existingTeam);

            //Assert
            Assert.AreEqual(expectedResult, actualResult);
        }
Example #2
0
        public IActionResult Edit([Bind(include: "Id, Name, KnownName")] Team team)
        {
            if (ModelState.IsValid)
            {
                var providedTeam = _sportingFixturesService.GetTeam(team.Id);

                if (providedTeam == null)
                {
                    return(View());
                }

                var foundExistingTeamByName      = _sportingFixturesService.GetAllTeams().ToList().Find(t => t.Name.ToLower() == team.Name.ToLower());
                var foundExistingTeamByKnownName = _sportingFixturesService.GetAllTeams().ToList().Find(t => t.KnownName.ToLower() == team.KnownName.ToLower());

                if (foundExistingTeamByName != null && foundExistingTeamByName.Name != providedTeam.Name)
                {
                    ModelState.AddModelError("PostEditTeamNameError", $"The team \"{foundExistingTeamByName.Name}\" is already exists");
                    return(View(team));
                }
                else if (foundExistingTeamByKnownName != null && foundExistingTeamByKnownName.KnownName != providedTeam.KnownName)
                {
                    ModelState.AddModelError("PostEditTeamKnownNameError", $"The team known as \"{foundExistingTeamByKnownName.KnownName}\" is already exists");
                    return(View(team));
                }

                bool isTeamEdited = _sportingFixturesService.EditTeam(team);

                if (isTeamEdited)
                {
                    return(RedirectToAction(nameof(Index)));
                }
                else
                {
                    ModelState.AddModelError("PostEditTeamError", $"Team \"{foundExistingTeamByName.Name}\" could not be edited due to database error");
                    return(View(team));
                }
            }
            else
            {
                return(View(team));
            }
        }