public void RRBResetMatches_FiresMatchesModifiedEvent_WithAllAffectedMatches() { int matchesTouched = 5; List <IPlayer> pList = new List <IPlayer>(); for (int i = 0; i < 7; ++i) { Mock <IPlayer> moq = new Mock <IPlayer>(); moq.Setup(p => p.Id).Returns(i + 1); pList.Add(moq.Object); } IBracket b = new RoundRobinBracket(pList); for (int n = 1; n <= matchesTouched; ++n) { b.AddGame(n, 1, 0, PlayerSlot.Defender); } int affectedMatches = 0; b.MatchesModified += delegate(object sender, BracketEventArgs e) { affectedMatches += e.UpdatedMatches.Count; }; b.ResetMatches(); Assert.AreEqual(matchesTouched, affectedMatches); }
public void RRBResetMatches_ResetsRankings() { List <IPlayer> pList = new List <IPlayer>(); for (int i = 0; i < 9; ++i) { Mock <IPlayer> moq = new Mock <IPlayer>(); moq.Setup(p => p.Id).Returns(i + 1); pList.Add(moq.Object); } IBracket b = new RoundRobinBracket(pList); for (int n = 1; n <= b.NumberOfMatches; ++n) { b.AddGame(n, 1, 3, PlayerSlot.Challenger); } b.ResetMatches(); bool rankingsReset = true; foreach (IPlayerScore score in b.Rankings) { if (score.Rank != 1 || score.W != 0) { rankingsReset = false; } } Assert.IsTrue(rankingsReset); }