public static void TestAddRangeOrderableStrings()
        {
            OrderableStrings string1 = new OrderableStrings
            {
                { "W", -4 },
                { "E", -1 },
                { "Y", 3 },
                { "U", 0 },
                { "I", -3 },
                { "A", 6 }
            };

            OrderableStrings string2 = new OrderableStrings
            {
                "W",
                "E",
                "Y",
                "U",
                "I"
            };

            string2.AddRange(string1);

            Assert.AreEqual(6, string2.Count);
            Assert.AreEqual(-4, string2.GetOrderNumber(0));
            Assert.AreEqual(-1, string2.GetOrderNumber(1));
            Assert.AreEqual(3, string2.GetOrderNumber(2));
            Assert.AreEqual(0, string2.GetOrderNumber(3));
            Assert.AreEqual(-3, string2.GetOrderNumber(4));
        }
        public static void TestAddStringInt()
        {
            OrderableStrings strings = new OrderableStrings
            {
                "A",
                { "Y", -1 }
            };

            strings.Add("W", -4);
            strings.Add("A", -4);
            strings.Add("E", 1);
            strings.Add("B", 0);

            Assert.AreEqual("A,Y,W,E,B", strings.ToString());

            Assert.AreEqual(-4, strings.GetOrderNumber(0));
            Assert.AreEqual(-4, strings.GetOrderNumber(2));
            Assert.AreEqual(1, strings.GetOrderNumber(3));
            Assert.AreEqual(0, strings.GetOrderNumber(4));
        }
        public static void TestRemoveAt()
        {
            OrderableStrings strings = new OrderableStrings
            {
                { "W", -4 },
                { "E", -1 },
            };

            strings.RemoveAt(1);

            Assert.AreEqual("W", strings.ToString());
            Assert.AreEqual(-4, strings.GetOrderNumber(0));
        }
        public static void TestSetAtIndexSameValue()
        {
            OrderableStrings strings = new OrderableStrings
            {
                { "W", -4 },
                { "E", -1 },
                { "Y", 3 },
                { "U", 0 },
                { "I", -3 },
                { "A", 6 }
            };

            Assert.AreEqual("W,E,Y,U,I,A", strings.ToString());
            Assert.AreEqual(0, strings.SetOrRemoveAtIndex(0, "W"));
            Assert.AreEqual(-4, strings.GetOrderNumber(0));
        }