public void Case2() { var difference = new IHand[] { new DefaultHand(new TheArmy(), 0) }; var next = new IHand[] { new DefaultHand(new TheKing(), 0) }; var previous = next.Concat(difference); var differenceHandName = difference.Select(hand => hand.Name).OrderBy(name => name); var result = HandDifferenceCalculator.Calculate(previous, next); Assert.IsFalse(result.IncreasedDifference.Any()); Assert.IsTrue( result.DecreasedDifference .Select(hand => hand.Name) .OrderBy(name => name) .SequenceEqual(differenceHandName) ); }