public void Push_Middle_AddedCardsAllInRandomPlacesButNotFirstOrLast() { var dict = new Dictionary <int, int>(); for (var i = 0; i < 50; i++) { var pile = new Pile(new[] { RndCard(), RndCard(), RndCard() }); var cards = new[] { RndCard(), RndCard() }; pile.Push(cards, PilePosition.Middle); IncValueForKey(dict, pile.GetIndexOf(cards[0])); IncValueForKey(dict, pile.GetIndexOf(cards[1])); } Assert.That(dict.Select(x => x.Value), Has.All.GreaterThan(1)); Assert.IsFalse(dict.ContainsKey(0), "not first"); Assert.IsFalse(dict.ContainsKey(4), "not last"); }
public void Push_Middle_AddedCardAlwaysInDifferentPlace() { var addedCard = RndCard(); var dict = new Dictionary <int, int>(); for (var i = 0; i < 50; i++) { var pile = new Pile(Enumerable.Repeat(RndCard(), 4)); pile.Push(addedCard, PilePosition.Middle); IncValueForKey(dict, pile.GetIndexOf(addedCard)); } Assert.That(dict.Select(x => x.Value), Has.All.GreaterThan(1)); Assert.IsFalse(dict.ContainsKey(0), "not first"); Assert.IsFalse(dict.ContainsKey(4), "not last"); }