public void RRB_ReplacePlayer_ReplacesPlayerInRankings() { Mock <IPlayer> playerMoq = new Mock <IPlayer>(); playerMoq.Setup(p => p.Id).Returns(10); List <IPlayer> pList = new List <IPlayer>(); for (int i = 0; i < 8; ++i) { Mock <IPlayer> moq = new Mock <IPlayer>(); moq.Setup(p => p.Id).Returns(i); pList.Add(moq.Object); } IBracket b = new RoundRobinBracket(pList, 3); List <IMatch> firstRound = b.GetRound(1); foreach (IMatch match in firstRound) { b.AddGame(match.MatchNumber, 1, 0, PlayerSlot.Defender); b.AddGame(match.MatchNumber, 0, 1, PlayerSlot.Challenger); b.AddGame(match.MatchNumber, 1, 0, PlayerSlot.Defender); } int pIndex = 3; int rankIndex = b.Rankings.FindIndex(r => r.Id == b.Players[pIndex].Id); b.ReplacePlayer(playerMoq.Object, pIndex); Assert.AreEqual(playerMoq.Object.Id, b.Rankings[rankIndex].Id); }