Ejemplo n.º 1
0
        public void BoilOffThrowsExceptionOnUnfinishedRound()
        {
            IPairingsGenerator     bopg   = new BoilOffPairingsGenerator();
            List <TournamentTeam>  teams  = new List <TournamentTeam>(CreateTeams(9));
            List <TournamentRound> rounds = new List <TournamentRound>();

            bopg.LoadState(teams, rounds);
            var round = bopg.CreateNextRound(null);

            rounds.Add(round);

            round.Pairings[0].TeamScores[0].Score = new HighestPointsScore(1.0);

            bopg.LoadState(teams, rounds);

            try
            {
                round = bopg.CreateNextRound(null);
                Assert.Fail();
            }
            catch (InvalidTournamentStateException)
            {
                return;
            }
        }
Ejemplo n.º 2
0
        public void BoilOffThreeTeamsIsOneRound()
        {
            IPairingsGenerator bopg = new BoilOffPairingsGenerator();

            List <TournamentTeam>  teams  = new List <TournamentTeam>(CreateTeams(3));
            List <TournamentRound> rounds = new List <TournamentRound>();

            try
            {
                bopg.LoadState(teams, rounds);
                TournamentRound round = bopg.CreateNextRound(null);
                foreach (var pairing in round.Pairings)
                {
                    foreach (var teamScore in pairing.TeamScores)
                    {
                        teamScore.Score = new HighestPointsScore(r.Next(20));
                    }
                }
                rounds.Add(round);

                bopg.LoadState(teams, rounds);
                round = bopg.CreateNextRound(null);
                Assert.AreEqual(null, round);
            }
            catch (ArgumentNullException)
            {
            }
        }
Ejemplo n.º 3
0
        public void BoilOffManyTeams()
        {
            IPairingsGenerator bopg = new BoilOffPairingsGenerator();

            List <TournamentTeam>  teams  = new List <TournamentTeam>(CreateTeams(9));
            List <TournamentRound> rounds = new List <TournamentRound>();

            try
            {
                bopg.LoadState(teams, rounds);
                DisplayTournamentRound(bopg.CreateNextRound(null));
            }
            catch (ArgumentNullException)
            {
            }
        }
Ejemplo n.º 4
0
        public void BoilOffHandlesManyCompetitorsWell()
        {
            IPairingsGenerator pg = new BoilOffPairingsGenerator();

            List <TournamentTeam>  teams  = new List <TournamentTeam>(CreateTeams(50));
            List <TournamentRound> rounds = new List <TournamentRound>();

            try
            {
                RunTournament(pg, teams, rounds, true, null);

                DisplayTournamentRounds(rounds);
                DisplayTournamentRankings(pg.GenerateRankings());
            }
            catch (InvalidTournamentStateException)
            {
                Assert.Fail();
            }
        }
Ejemplo n.º 5
0
        public void BoilOffThrowsExceptionOnNullParameters()
        {
            IPairingsGenerator bopg = new BoilOffPairingsGenerator();

            IPairingsGeneratorThrowsExceptionOnNullParameters(bopg);
        }