public void GivenSubset_ComputeComplement() { //Arrange var reference = new List <long> { 1, 2, 3, 4, 5 }; var subset1 = new List <long> { 1, 3, 5 }; var subset2 = new List <long> { 2, 3, 7, 8 }; var subset3 = new List <long> { 1, 2, 3, 4, 5 }; var expected1 = new List <long> { 2, 4 }; var expected2 = new List <long> { 1, 4, 5 }; var expected3 = new List <long>(); //Act var actual1 = UtilityFunctions.Complement(subset1, reference); var actual2 = UtilityFunctions.Complement(subset2, reference); var actual3 = UtilityFunctions.Complement(subset3, reference); //Assert Assert.True(Enumerable.SequenceEqual(expected1, actual1)); Assert.True(Enumerable.SequenceEqual(expected2, actual2)); Assert.True(Enumerable.SequenceEqual(expected3, actual3)); }