public void Multiple_Clubs()
        {
            //Arrange
            IClubRepository sut  = GetInMemoryClubRepository();
            Club            club = new Club()
            {
                ClubID = 1,
                Name   = "Rathfarnham Mock",
                Number = "123 4567899",
                Email  = "*****@*****.**"
            };
            Club club2 = new Club()
            {
                ClubID = 2,
                Name   = "Mock",
                Number = "1234567899",
                Email  = "*****@*****.**"
            };

            //Act
            sut.CreateClub(club);
            sut.CreateClub(club2);

            //Assert
            Assert.Equal(2, sut.GetClubs().Count);
        }
Пример #2
0
        public async Task <ClubCreateDTO> CreateClub(ClubCreateDTO club)
        {
            var mappedClub   = _mapper.Map <Club>(club);
            var returnedClub = await _clubRepository.CreateClub(mappedClub);

            return(_mapper.Map <ClubCreateDTO>(returnedClub));
        }
        public void Index_Update_Name()
        {
            //Arrange
            IClubRepository sut  = GetInMemoryClubRepository();
            Club            club = new Club()
            {
                ClubID = 1,
                Name   = "Rathfarnham Mock",
                Number = "123 4567899",
                Email  = "*****@*****.**"
            };
            Club newClub = new Club()
            {
                ClubID = 1,
                Name   = "Updated Club",
            };

            //Act
            sut.CreateClub(club);
            Club updatedClub = sut.UpdateClub(newClub);

            //Assert
            Assert.Single(sut.GetClubs());
            Assert.Equal("Updated Club", updatedClub.Name);
        }
        public void Missing_Four_Required_Properties()
        {
            //Arrange
            IClubRepository         sut = GetInMemoryClubRepository();
            CheckPropertyValidation cpv = new CheckPropertyValidation();

            Club club = new Club()
            {
                ClubID = 1,
                //Name = "Rathfarnham Mock",
                //Number = "123 4567899",
                //Email = "*****@*****.**",
                //Address = "1 Main Street",
                ClubImage1 = "image1.png",
                ClubImage2 = "image2.png",
                ClubImage3 = "image3.png",
            };

            //Act
            sut.CreateClub(club);

            //Assert
            var errorcount = cpv.myValidation(club).Count();

            Assert.Equal(4, errorcount);
        }
        public void Index_AllItems()
        {
            //Arrange
            IClubRepository sut  = GetInMemoryClubRepository();
            Club            club = new Club()
            {
                ClubID     = 1,
                Name       = "Rathfarnham Mock",
                Number     = "123 4567899",
                Email      = "*****@*****.**",
                Address    = "1 Main Street",
                ClubImage1 = "image1.png",
                ClubImage2 = "image2.png",
                ClubImage3 = "image3.png",
            };

            //Act
            Club savedClub = sut.CreateClub(club);

            //Assert
            Assert.Single(sut.GetClubs());
            Assert.Equal("Rathfarnham Mock", savedClub.Name);
            Assert.Equal("123 4567899", savedClub.Number);
            Assert.Equal("*****@*****.**", savedClub.Email);
            Assert.Equal("1 Main Street", savedClub.Address);
            Assert.Equal("image1.png", savedClub.ClubImage1);
            Assert.Equal("image2.png", savedClub.ClubImage2);
            Assert.Equal("image3.png", savedClub.ClubImage3);
        }
        public void Index_DeleteClub()
        {
            //Arrange
            IClubRepository sut  = GetInMemoryClubRepository();
            Club            club = new Club()
            {
                ClubID = 1,
                Name   = "Rathfarnham Mock",
                Number = "123 4567899",
                Email  = "*****@*****.**"
            };

            //Act
            sut.CreateClub(club);
            sut.DeleteClub(club);

            //Assert
            Assert.Empty(sut.GetClubs());
        }
        public void Index_Add_WithNoEmail()
        {
            //Arrange
            IClubRepository sut  = GetInMemoryClubRepository();
            Club            club = new Club()
            {
                ClubID = 1,
                Name   = "Rathfarnham Mock",
                Number = "123 4567899",
            };

            //Act
            Club savedClub = sut.CreateClub(club);

            //Assert
            Assert.Single(sut.GetClubs());
            Assert.Equal("Rathfarnham Mock", savedClub.Name);
            Assert.Equal("123 4567899", savedClub.Number);
            Assert.Null(savedClub.Email);
        }
Пример #8
0
 public Club AddClub(Club club)
 {
     return(_clubRepo.CreateClub(club));
 }
        public async Task <ActionResult> CreateClub([Bind(Prefix = "Club", Include = "ClubName,Teams")] Club club)
        {
            if (club is null)
            {
                throw new System.ArgumentNullException(nameof(club));
            }

            // We're not interested in validating the details of the selected teams
            foreach (var key in ModelState.Keys.Where(x => x.StartsWith("Club.Teams", StringComparison.OrdinalIgnoreCase)))
            {
                ModelState[key].Errors.Clear();
            }

            var isAuthorized = _authorizationPolicy.IsAuthorized(club);

            if (isAuthorized[AuthorizedAction.CreateClub] && ModelState.IsValid)
            {
                // Create an owner group
                var          groupName = _routeGenerator.GenerateRoute("club", club.ClubName, NoiseWords.ClubRoute);
                IMemberGroup group;
                do
                {
                    group = Services.MemberGroupService.GetByName(groupName);
                    if (group == null)
                    {
                        group = new MemberGroup
                        {
                            Name = groupName
                        };
                        Services.MemberGroupService.Save(group);
                        club.MemberGroupKey  = group.Key;
                        club.MemberGroupName = group.Name;
                        break;
                    }
                    else
                    {
                        groupName = _routeGenerator.IncrementRoute(groupName);
                    }
                }while (group != null);

                // Assign the current member to the group unless they're already admin
                var currentMember = Members.GetCurrentMember();
                if (!Members.IsMemberAuthorized(null, new[] { Groups.Administrators }, null))
                {
                    Services.MemberService.AssignRole(currentMember.Id, group.Name);
                }

                // Create the club
                var createdClub = await _clubRepository.CreateClub(club, currentMember.Key, currentMember.Name).ConfigureAwait(false);

                _cacheOverride.OverrideCacheForCurrentMember(CacheConstants.TeamListingsCacheKeyPrefix);

                // Redirect to the club
                return(Redirect(createdClub.ClubRoute));
            }

            var viewModel = new ClubViewModel(CurrentPage, Services.UserService)
            {
                Club = club,
            };

            viewModel.IsAuthorized       = isAuthorized;
            viewModel.Metadata.PageTitle = $"Add a club";

            viewModel.Breadcrumbs.Add(new Breadcrumb {
                Name = Constants.Pages.Teams, Url = new Uri(Constants.Pages.TeamsUrl, UriKind.Relative)
            });

            return(View("CreateClub", viewModel));
        }
Пример #10
0
 public Club CreateClub(User user, Institute institute, Domain domain)
 {
     return(_repo.CreateClub(user, institute, domain));
 }