public void FullGroupJoinsEmptyRight(OverloadCase overloadCase) { var listA = new[] { 2, 3 }; var listB = new int[] { }; var result = FullGroupJoin(overloadCase, listA, listB, x => x).ToDictionary(a => a.Key); Assert.AreEqual(2, result.Keys.Count); Assert.AreEqual(2, result[2].First.Single()); Assert.IsEmpty(result[2].Second); Assert.AreEqual(3, result[3].First.Single()); Assert.IsEmpty(result[3].Second); }
public void FullGroupJoinsResults(OverloadCase overloadCase) { var listA = new[] { 1, 2 }; var listB = new[] { 2, 3 }; var result = FullGroupJoin(overloadCase, listA, listB, x => x).ToDictionary(a => a.Key); Assert.AreEqual(3, result.Keys.Count); Assert.IsEmpty(result[1].Second); result[1].First.AssertSequenceEqual(1); Assert.IsEmpty(result[3].First); result[3].Second.AssertSequenceEqual(3); result[2].First.AssertSequenceEqual(2); result[2].Second.AssertSequenceEqual(2); }
public void FullGroupPreservesOrder(OverloadCase overloadCase) { var listA = new[]