Exemple #1
0
        public IActionResult Create([Bind(include: "Name, KnownName")] Team team)
        {
            if (string.IsNullOrEmpty(team.Name) || string.IsNullOrEmpty(team.KnownName))
            {
                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)
            {
                ModelState.AddModelError("PostCreateTeamNameError", $"The team \"{foundExistingTeamByName.Name}\" is already exists");
                return(View());
            }
            else if (foundExistingTeamByKnownName != null)
            {
                ModelState.AddModelError("PostCreateTeamKnownNameError", $"The team known as \"{foundExistingTeamByKnownName.KnownName}\" is already exists");
                return(View());
            }

            if (ModelState.IsValid)
            {
                var newTeam = new Team {
                    Name = team.Name, KnownName = team.KnownName
                };

                bool isTeamCreated = _sportingFixturesService.CreateTeam(newTeam);
                if (isTeamCreated)
                {
                    return(RedirectToAction(nameof(Index)));
                }
                else
                {
                    ModelState.AddModelError("PostCreateTeamError", $"Team \"{foundExistingTeamByName.Name}\" could not be inserted due to database error");
                    return(View());
                }
            }
            else
            {
                return(View());
            }
        }
Exemple #2
0
        public void CreateTeam_CreateNewTeamWithoutId_ReturnsTrue()
        {
            //Arrange
            var randomTeam = new Team {
                Name = "Random", KnownName = "Random"
            };
            bool expectedResult = true;

            //Act
            bool actualResult = _sut.CreateTeam(randomTeam);

            //Assert
            Assert.AreEqual(expectedResult, actualResult);
        }