public void TestMergeEnumerations()
        {
            char[] x = "aeiou".ToCharArray();
            char[] y = "bcdfg".ToCharArray();
            char[] z = "ez".ToCharArray();

            var order = OrderedEnumeration <char> .Merge(x, y, z);

            Assert.AreEqual("abcdeefgiouz", new string(new List <char>(order).ToArray()));

            order = OrderedEnumeration <char> .Merge(Comparer <char> .Default, DuplicateHandling.LastValueWins, x, y, z);

            Assert.AreEqual("abcdefgiouz", new string(new List <char>(order).ToArray()));

            order = OrderedEnumeration <char> .Merge(Comparer <char> .Default, x, y);

            order = OrderedEnumeration <char> .WithDuplicateHandling(order, Comparer <char> .Default,
                                                                     DuplicateHandling.FirstValueWins);

            Assert.AreEqual("abcdefgiou", new string(new List <char>(order).ToArray()));
        }