Beispiel #1
0
        private static List <TeamLeagueMatch> CreateMatches(TeamLeagueRound round, List <Domain.Competitor.TeamCompetitor> competitors)
        {
            var matchEntries = new List <TeamMatchEntry>();

            var matchEntry = new TeamMatchEntry
            {
                HomeAway = HomeAway.Home,
                Team     = competitors[0].Team,
            };

            matchEntry.Lineup = CreateLineup(matchEntry, 0);
            matchEntries.Add(matchEntry);

            matchEntry = new TeamMatchEntry
            {
                HomeAway = HomeAway.Away,
                Team     = competitors[1].Team,
            };
            matchEntry.Lineup = CreateLineup(matchEntry, 11);
            matchEntries.Add(matchEntry);

            var match = new TeamLeagueMatch
            {
                Guid            = new Guid("00000000-0000-0000-0000-000000000000"),
                TeamLeagueRound = round,
                MatchEntries    = matchEntries
            };

            match.MatchEntries.ToList().ForEach(me => me.TeamLeagueMatch = match);

            return(new List <TeamLeagueMatch> {
                match
            });
        }
Beispiel #2
0
        public void Given_ScoreForOpponentIsSet_When_GetGoalsAgainst_Then_GoalsForOpponentAreReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var teamChelsea = new Team {
                Name = "Chelsea"
            };

            var match = new TeamLeagueMatch
            {
                MatchEntries = new List <TeamMatchEntry>
                {
                    new TeamMatchEntry
                    {
                        Team  = teamLiverpool,
                        Score = new IntegerScore {
                            Value = 2
                        }
                    },
                    new TeamMatchEntry
                    {
                        Team  = teamChelsea,
                        Score = new IntegerScore {
                            Value = 1
                        }
                    }
                }
            };

            //Assert
            match.GetGoalsAgainst(teamLiverpool).Should().Be(1);
        }
Beispiel #3
0
        public void Given_ScoreIsMissing_When_Winner_Then_NullIsReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var teamChelsea = new Team {
                Name = "Chelsea"
            };

            var match = new TeamLeagueMatch
            {
                MatchEntries = new List <TeamMatchEntry>
                {
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Home,
                        Team     = teamLiverpool,
                        Score    = null
                    },
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Away,
                        Team     = teamChelsea,
                        Score    = null
                    }
                }
            };

            //Assert
            match.Winner.Should().BeNull();
        }
Beispiel #4
0
        public void Given_NoScoreValues_When_GetGoalsAgainst_Then_ZeroIsReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var teamChelsea = new Team {
                Name = "Chelsea"
            };

            var match = new TeamLeagueMatch
            {
                MatchEntries = new List <TeamMatchEntry>
                {
                    new TeamMatchEntry
                    {
                        Team  = teamLiverpool,
                        Score = new IntegerScore()
                    },
                    new TeamMatchEntry
                    {
                        Team  = teamChelsea,
                        Score = new IntegerScore()
                    }
                }
            };

            //Assert
            match.GetGoalsAgainst(teamLiverpool).Should().Be(0);
        }
Beispiel #5
0
        public void Given_NoPointSystem_When_GetPointsFor_Then_ZeroIsReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var match = new TeamLeagueMatch();

            //Assert
            match.GetPointsFor(teamLiverpool, null).Should().Be(0);
        }
Beispiel #6
0
        public void Given_MatchEntryDoesNotExistForTeam_When_GetGoalsForTeam_Then_NullIsReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var match = new TeamLeagueMatch();

            //Assert
            match.GetGoalsFor(teamLiverpool).Should().Be(0);
        }
Beispiel #7
0
        public void Given_NoMatchEntries_When_GetPointsFor_Then_ZeroIsReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var match       = new TeamLeagueMatch();
            var pointSystem = new PointSystem(3, 1, 0);

            //Assert
            match.GetPointsFor(teamLiverpool, pointSystem).Should().Be(0);
        }
Beispiel #8
0
        public void Given_NoMatchEntries_When_GetGoalsAgainst_Then_ZeroIsReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var teamChelsea = new Team {
                Name = "Chelsea"
            };

            var match = new TeamLeagueMatch();

            //Assert
            match.GetGoalsAgainst(teamLiverpool).Should().Be(0);
        }
Beispiel #9
0
        public TeamLeagueMatch GetMatch(Guid guid)
        {
            TeamLeagueMatch match = null;

            if (Rounds != null)
            {
                foreach (var round in Rounds)
                {
                    match = round.Matches.SingleOrDefault(m => m.Guid == guid);
                    if (match != null)
                    {
                        break;
                    }
                }
            }

            return(match);
        }
Beispiel #10
0
        public void CreateRounds()
        {
            int amountOfRounds = (Competitors.Count - 1) * 2;

            for (int r = 1; r <= amountOfRounds; r++)
            {
                var round = new TeamLeagueRound
                {
                    Name = $"Round {r}"
                };
                for (int m = 0; m < Competitors.Count / 2; m++)
                {
                    var match = new TeamLeagueMatch {
                        Guid = Guid.NewGuid()
                    };
                    match.CreateMatchEntries(Sports.Options.AmountOfPlayers);
                    round.Matches.Add(match);
                }

                Rounds.Add(round);
            }
        }
Beispiel #11
0
        public void Given_Lost_When_GetPointsFor_Then_LostPointsAreReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var teamChelsea = new Team {
                Name = "Chelsea"
            };

            var match = new TeamLeagueMatch
            {
                MatchEntries = new List <TeamMatchEntry>
                {
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Home,
                        Team     = teamLiverpool,
                        Score    = new IntegerScore {
                            Value = 1
                        }
                    },
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Away,
                        Team     = teamChelsea,
                        Score    = new IntegerScore {
                            Value = 2
                        }
                    }
                }
            };

            var pointSystem = new PointSystem(3, 1, 0);

            //Assert
            match.GetPointsFor(teamLiverpool, pointSystem).Should().Be(0);
        }
Beispiel #12
0
        public void Given_AwayTeamIsWinner_When_Winner_Then_AwayTeamIsReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var teamChelsea = new Team {
                Name = "Chelsea"
            };

            var match = new TeamLeagueMatch
            {
                MatchEntries = new List <TeamMatchEntry>
                {
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Home,
                        Team     = teamLiverpool,
                        Score    = new IntegerScore {
                            Value = 0
                        }
                    },
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Away,
                        Team     = teamChelsea,
                        Score    = new IntegerScore {
                            Value = 1
                        }
                    }
                }
            };

            //Assert
            match.Winner.Should().Be(teamChelsea);
        }
Beispiel #13
0
        public void Given_ScoreForAwayTeamIsSet_When_GetGoalsForAwayTeam_Then_GoalsForAwayTeamAreReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var teamChelsea = new Team {
                Name = "Chelsea"
            };

            var match = new TeamLeagueMatch
            {
                MatchEntries = new List <TeamMatchEntry>
                {
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Home,
                        Team     = teamLiverpool,
                        Score    = new IntegerScore {
                            Value = 2
                        }
                    },
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Away,
                        Team     = teamChelsea,
                        Score    = new IntegerScore {
                            Value = 1
                        }
                    }
                }
            };

            //Assert
            match.GetGoalsFor(teamChelsea).Should().Be(1);
        }
Beispiel #14
0
        public void Given_GameIsNotADraw_When_IsDraw_Then_FalseIsReturned()
        {
            //Act
            var teamLiverpool = new Team {
                Name = "Liverpool"
            };
            var teamChelsea = new Team {
                Name = "Chelsea"
            };

            var match = new TeamLeagueMatch
            {
                MatchEntries = new List <TeamMatchEntry>
                {
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Home,
                        Team     = teamLiverpool,
                        Score    = new IntegerScore {
                            Value = 1
                        }
                    },
                    new TeamMatchEntry
                    {
                        HomeAway = HomeAway.Away,
                        Team     = teamChelsea,
                        Score    = new IntegerScore {
                            Value = 0
                        }
                    }
                }
            };

            //Assert
            match.IsDraw.Should().Be(false);
        }