예제 #1
0
        public void RemoveCommonItems_When_common_and_sequence_becomes_empty()
        {
            int[] s1 = { 1, 2 };
            int[] s2 = { 4, 2, 6, 8, 1 };
            int[] s3 = { 10, 21, 2, 1 };

            var res = LinqExtensionMethods.RemoveCommonItems(s1, s2, s3);

            Assert.AreEqual(3, res.Length);

            Assert.AreNotEqual(s1, res[0]);
            Assert.AreNotEqual(s2, res[1]);
            Assert.AreNotEqual(s3, res[2]);

            Assert.IsTrue(res[0].SequenceEqual(new int[0]));
            Assert.IsTrue(res[1].SequenceEqual(new[] { 4, 6, 8 }));
            Assert.IsTrue(res[2].SequenceEqual(new[] { 10, 21 }));
        }
예제 #2
0
        public void RemoveCommonItems_When_no_common()
        {
            int[] s1 = { 1, 2 };
            int[] s2 = { 4, 6, 8 };
            int[] s3 = { 10, 21 };

            var res = LinqExtensionMethods.RemoveCommonItems(s1, s2, s3);

            Assert.AreEqual(3, res.Length);

            Assert.AreNotEqual(s1, res[0]);
            Assert.AreNotEqual(s2, res[1]);
            Assert.AreNotEqual(s3, res[2]);

            Assert.IsTrue(s1.SequenceEqual(res[0]));
            Assert.IsTrue(s2.SequenceEqual(res[1]));
            Assert.IsTrue(s3.SequenceEqual(res[2]));
        }