public void CanDoSimple4PlayerDraft() { IDraftLogic draftLogic = new ModifiedRotisserieDraftLogic(); var draft = draftLogic.CreateDraft("My Testdraft", _members[1].Id, 75, true); for (var i = 0; i < 4; i++) { draftLogic.AddMemberToDraft(draft.Id, _members[i].Id); } draftLogic.StartDraft(draft.Id, false); using (var sl = new SystemLogic()) { var wasPicked = draftLogic.PickCard(draft.Id, _members[1].Id, _cards[1].Id); Assert.IsFalse(wasPicked, "Not Player Bs turn"); // Card should end up in _member[1]s FuturePick. var futurePicks = sl.GetMyFuturePicks(draft.Id, _members[1].Id); Assert.AreEqual(1, futurePicks.Count); wasPicked = draftLogic.PickCard(draft.Id, _members[0].Id, _cards[0].Id); Assert.IsTrue(wasPicked, "Player A should be able to pick"); // We should now have two picks total in this draft. var picks = sl.GetPickList(draft.Id); Assert.AreEqual(2, picks.Count); //And _member[1] should have no FuturePicks futurePicks = sl.GetMyFuturePicks(draft.Id, _members[1].Id); Assert.AreEqual(0, futurePicks.Count); Assert.IsTrue(draftLogic.IsMyTurn(draft.Id, _members[2].Id), "Should be Player Cs turn"); wasPicked = draftLogic.PickCard(draft.Id, _members[2].Id, _cards[2].Id); Assert.IsTrue(wasPicked, "It should be Player C"); wasPicked = draftLogic.PickCard(draft.Id, _members[3].Id, _cards[3].Id); Assert.IsTrue(wasPicked, "It should be Player D"); wasPicked = draftLogic.PickCard(draft.Id, _members[3].Id, _cards[4].Id); Assert.IsTrue(wasPicked, "It should be Player D"); wasPicked = draftLogic.PickCard(draft.Id, _members[2].Id, _cards[5].Id); Assert.IsTrue(wasPicked, "It should be Player C"); wasPicked = draftLogic.PickCard(draft.Id, _members[1].Id, _cards[6].Id); Assert.IsTrue(wasPicked, "It should be Player B"); wasPicked = draftLogic.PickCard(draft.Id, _members[0].Id, _cards[7].Id); Assert.IsTrue(wasPicked, "It should be Player A"); wasPicked = draftLogic.PickCard(draft.Id, _members[1].Id, _cards[8].Id); Assert.IsTrue(wasPicked, "It should be Player B"); } }