Example #1
0
        public async Task WHEN_repostory_is_queried_for_SportsClubs_with_sportType_THEN_all_SportClubs_with_sportType_are_returned()
        {
            // arrange

            var s1 = new SportsClub
            {
                ClubId = 1030,
                Name   = "Sport club testing one one",
                Park   = new Park(),
                Sport  = new SportType {
                    Name = "Other"
                },
                MembershipFee = 1000,
                Members       = 20,
                Email         = "*****@*****.**",
                President     = "someone important"
            };
            var s2 = new SportsClub
            {
                ClubId = 1031,
                Name   = "Sport club testing two one",
                Park   = new Park(),
                Sport  = new SportType {
                    Name = "Tennis"
                },
                MembershipFee = 300,
                Members       = 3,
                Email         = "*****@*****.**",
                President     = "someone even more important"
            };
            var s3 = new SportsClub
            {
                ClubId = 1032,
                Name   = "Sport club testing two one",
                Park   = new Park(),
                Sport  = new SportType {
                    Name = "Tennis"
                },
                MembershipFee = 300,
                Members       = 3,
                Email         = "*****@*****.**",
                President     = "someone even more important"
            };

            _repository.Add(s1);
            _repository.Add(s2);
            _repository.Add(s3);
            _repository.SaveChangesAsync().Wait();

            // act

            var result1 = await _repository.GetSportsClubsBySportAsync("Other");

            var result2 = await _repository.GetSportsClubsBySportAsync("Tennis");

            var result3 = await _repository.GetSportsClubsBySportAsync("Bowls");

            // assert

            Assert.NotEmpty(result1);
            Assert.NotEmpty(result2);
            Assert.Null(result3);
            Assert.Contains(s1, result1);
            Assert.Contains(s2, result2);
            Assert.Contains(s3, result2);
        }