Пример #1
0
        public void RequestSet_NoChallenged_NotFoundException()
        {
            var league    = LeagueUtility.CreateLeague(dbContext);
            var requester = LeagueUtility.AddUsersToLeague(league, 1, dbContext)[0];

            Assert.ThrowsAsync <NotFoundException>(() => testObj.RequestSetAsync(requester.ID, 0, null));
        }
Пример #2
0
        public async Task Create_Valid_NotNull()
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            var season = await testObj.Create(league.ID, StartDate, EndDate);

            Assert.IsNotNull(season);
        }
Пример #3
0
        public async Task GetSeasons_Valid_Ok()
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            var result = await testObj.GetSeasons(league.ID);

            ControllerUtility.AssertStatusCode(result, HttpStatusCode.OK);
        }
Пример #4
0
        public void GenerateSchedule_NotEnoughParticipants_Exception(int userCount)
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            LeagueUtility.AddUsersToLeague(league, userCount, dbContext);
            var season = SeasonUtility.CreateSeason(dbContext, userCount).season;

            Assert.ThrowsAsync <InvalidOperationException>(() => testObj.GenerateScheduleAsync(season, dbContext));
        }
Пример #5
0
        public async Task Join_NewUser_UpdateDisplayName()
        {
            var league = LeagueUtility.CreateLeague(dbContext);
            var user   = DbContextUtility.AddNew <ApplicationUser>(dbContext, u => u.UserName = "******");

            var leagueUser = await testObj.Join(league.ID, user.Id);

            Assert.AreEqual(user.UserName, leagueUser.DisplayName);
        }
Пример #6
0
        public async Task UpdateSettings_HasLeagueUsers_PropogateDisplayName()
        {
            var          league         = LeagueUtility.CreateLeague(dbContext);
            var          leagueUser     = LeagueUtility.AddUsersToLeague(league, 1, dbContext)[0];
            const string newDisplayName = "bob";

            await testObj.UpdateSettings(leagueUser.UserID, newDisplayName, "", null);

            Assert.AreEqual(newDisplayName, leagueUser.DisplayName);
        }
Пример #7
0
        public async Task Create_Valid_AddsMembers()
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            LeagueUtility.AddUsersToLeague(league, 1, dbContext);

            var season = await testObj.Create(league.ID, StartDate, EndDate);

            Assert.IsTrue(season.Participants.Count > 0);
        }
Пример #8
0
        public async Task Join_OldUser_HasLeftFalse()
        {
            var        league        = LeagueUtility.CreateLeague(dbContext);
            var        user          = DbContextUtility.AddNew <ApplicationUser>(dbContext);
            LeagueUser oldLeagueUser = CreateOldLeagueUser(league, user);

            var leagueUser = await testObj.Join(league.ID, user.Id);

            Assert.IsFalse(leagueUser.HasLeft);
            Assert.AreEqual(oldLeagueUser.ID, leagueUser.ID);
        }
Пример #9
0
        public async Task Join_Valid_Created()
        {
            var league = LeagueUtility.CreateLeague(dbContext);
            var user   = DbContextUtility.AddNew <ApplicationUser>(dbContext);

            var request = new JoinRequest(league.ID, user.Id);

            var result = await testObj.Join(request);

            ControllerUtility.AssertStatusCode(result, HttpStatusCode.Created);
        }
Пример #10
0
        public async Task Get_Valid_Ok()
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            var result = await testObj.Get(league.ID);

            var resultLeague = result.GetObject <League>();

            ControllerUtility.AssertStatusCode(result, HttpStatusCode.OK);
            Assert.IsNotNull(resultLeague);
        }
Пример #11
0
        public async Task GetUser_HasUser_Ok()
        {
            var league     = LeagueUtility.CreateLeague(dbContext);
            var leagueUser = LeagueUtility.AddUsersToLeague(league, 1, dbContext)[0];

            var result = await testObj.GetUser(leagueUser.ID);

            var resultObj = result.GetObject <LeagueUserDto>();

            ControllerUtility.AssertStatusCode(result, HttpStatusCode.OK);
            Assert.AreEqual(leagueUser.ID, resultObj.ID);
        }
Пример #12
0
        public async Task RequestSet_Valid_SetLeague()
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            LeagueUtility.AddUsersToLeague(league, 2, dbContext);
            var requester  = league.Members[0];
            var challenged = league.Members[1];

            var request = await testObj.RequestSetAsync(requester.ID, challenged.ID, null);

            Assert.AreEqual(league.ID, request.LeagueID);
        }
Пример #13
0
        public async Task RequestSet_Valid_DateSet()
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            LeagueUtility.AddUsersToLeague(league, 2, dbContext);
            var requester  = league.Members[0];
            var challenged = league.Members[1];

            var request = await testObj.RequestSetAsync(requester.ID, challenged.ID, null);

            Assert.AreEqual(DateTime.Today.ToShortDateString(), request.DateCreated.ToShortDateString());
        }
Пример #14
0
        //[Test]
        //public async Task GetSets_NoLeagueUser_NotFound()
        //{
        //    var result = await testObj.GetSets(0);

        //    ControllerUtility.AssertStatusCode(result, HttpStatusCode.NotFound);
        //}

        //[Test]
        //public async Task GetSets_HasSets_Ok()
        //{
        //    var members = CreateMembersWithSets(2);

        //    var result = await testObj.GetSets(members[0].ID);

        //    ControllerUtility.AssertStatusCode(result, HttpStatusCode.OK);
        //}

        //[TestCase(0)]
        //[TestCase(1)]
        //[TestCase(10)]
        //public async Task GetSets_HasSets_ReturnSets(int setCount)
        //{
        //    var members = CreateMembersWithSets(setCount);

        //    var result = await testObj.GetSets(members[0].ID);
        //    var resultObj = result.GetObject<SetDto[]>();

        //    Assert.AreEqual(setCount, resultObj.Length);
        //}

        private List <LeagueUser> CreateMembersWithSets(int setCount)
        {
            var league  = LeagueUtility.CreateLeague(dbContext);
            var members = LeagueUtility.AddUsersToLeague(league, 2, dbContext);

            for (var i = 0; i < setCount; ++i)
            {
                SetUtility.Create(dbContext, members[0].ID, members[1].ID, league.ID);
            }

            return(members);
        }
Пример #15
0
        public async Task Join_NewUser_CreateLeagueUser()
        {
            var user    = DbContextUtility.AddNew <ApplicationUser>(dbContext);
            var league1 = LeagueUtility.CreateLeague(dbContext);
            var league2 = LeagueUtility.CreateLeague(dbContext);

            await testObj.Join(league1.ID, user.Id);

            var leagueUser = await testObj.Join(league2.ID, user.Id);

            Assert.AreEqual(user.Id, leagueUser.UserID);
            Assert.AreEqual(league2.ID, leagueUser.LeagueID);
        }
Пример #16
0
        public async Task GetSeasons_Valid_ReturnsSeasons()
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            DbContextUtility.AddNew <Season>(dbContext, s => s.LeagueID = league.ID);
            DbContextUtility.AddNew <Season>(dbContext, s => s.LeagueID = league.ID);

            var result = await testObj.GetSeasons(league.ID);

            var seasons = result.GetObject <ICollection <Season> >();

            Assert.AreEqual(2, seasons.Count);
        }
Пример #17
0
        private SetRequest CreateSetRequest(bool isOpen)
        {
            var league     = LeagueUtility.CreateLeague(dbContext);
            var members    = LeagueUtility.AddUsersToLeague(league, 2, dbContext);
            var setRequest = DbContextUtility.AddNew <SetRequest>(dbContext, sr =>
            {
                sr.LeagueID     = league.ID;
                sr.RequesterID  = members[0].ID;
                sr.ChallengedID = members[1].ID;
                sr.IsOpen       = isOpen;
            });

            return(setRequest);
        }
Пример #18
0
        public async Task TakeSnapshots_HasSnapshot_SnapshotIsCorrect()
        {
            const int deltaRank   = 4;
            const int deltaPoints = -50;
            var       league      = LeagueUtility.CreateLeague(dbContext);
            var       member      = LeagueUtility.AddUsersToLeague(league, 1, dbContext)[0];

            member.Rank   = 14;
            member.Points = 2000;

            DbContextUtility.AddNew <RankSnapshot>(dbContext, rs =>
            {
                rs.LeagueUserID = member.ID;
                rs.Rank         = member.Rank + deltaRank;
                rs.Points       = member.Points + deltaPoints;
            });

            var snapshot = (await testObj.TakeSnapshots(league.ID))[0];

            Assert.AreEqual(member.Rank, snapshot.Rank, "Rank");
            Assert.AreEqual(member.Points, snapshot.Points, "Points");
            Assert.AreEqual(-deltaRank, snapshot.DeltaRank, "Delta Rank");
            Assert.AreEqual(-deltaPoints, snapshot.DeltaPoints, "Delta Points");
        }
Пример #19
0
 private League CreateLeagueWithAdmin()
 {
     return(LeagueUtility.CreateLeague(dbContext, userID));
 }
Пример #20
0
        public void Create_NameTaken_Conflict()
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            Assert.ThrowsAsync <ConflictException>(() => testObj.Create(league.Name, league.GameID, ""));
        }
Пример #21
0
        public void Join_NoUser_NotFound()
        {
            var league = LeagueUtility.CreateLeague(dbContext);

            Assert.ThrowsAsync <NotFoundException>(() => testObj.Join(league.ID, ""));
        }