public void Parse_nominal()
        {
            DomStringTokenList list = DomStringTokenList.Parse(" red \t\tgreen blue \t\r\n");

            Assert.True(list.Contains("red"));
            Assert.True(list.Contains("green"));
            Assert.True(list.Contains("blue"));

            Assert.Equal("red", list[0]);
            Assert.Equal("green", list[1]);
            Assert.Equal("blue", list[2]);
            Assert.Equal("red green blue", list.ToString());
        }
        public void Contains_Add_set_cache_implementation()
        {
            var list = DomStringTokenList.Parse("1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18");

            Assert.Equal(18, list.Count);
            Assert.Equal("1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18", list.ToString());
            for (int i = 1; i <= 18; i++)
            {
                Assert.True(list.Contains(i.ToString()));
            }

            Assert.False(list.Add("2"));
            Assert.True(list.Remove("2"));
            Assert.False(list.Contains("2"));
            Assert.True(list.Add("19"));
        }
        public void Parse_null_or_empty_string_are_empty(string text)
        {
            DomStringTokenList list = DomStringTokenList.Parse(text);

            Assert.Equal(DomStringTokenList.Empty, list);
        }