public void ShouldUpdateTeamStatsAfterMatch()
        {
            var groupStats = new GroupStats(1, A.Team.Repeat(4), isNeutralGround: false, hasReturnRound: false);
            var result = A.MatchResult.ForTeams(groupStats.Teams.ElementAt(0), groupStats.Teams.ElementAt(2)).WithScore(0, 1).Build();

            groupStats.TryApplyResult(result);

            Assert.That(groupStats.TeamStats[2].Played, Is.EqualTo(1));
        }
        public void ShouldNotApplyMatchResultMeantForOtherGroup()
        {
            var groupStats = new GroupStats(1, A.Team.Repeat(4), isNeutralGround: false, hasReturnRound: false);
            var result = A.MatchResult.ForTeams(A.Team.Build(), groupStats.Teams.ElementAt(2)).WithScore(0, 1).Build();

            bool hasAppliedResult = groupStats.TryApplyResult(result);

            Assert.That(hasAppliedResult, Is.False);
        }
 private void PlayAllFixtures(GroupStats groupStats, IEnumerable<Fixture> fixtures)
 {
     foreach (var fixture in fixtures)
     {
         groupStats.TryApplyResult(A.MatchResult.ForFixture(fixture).WithScore(1, 0).Build());
     }
 }