Default element closure information provider for HTML. Implements IHtmlClosureProviderTextRange which allows passing of ITextProvider + TextRange instead of extracting strings for comparison This is a frequently used class and performance improvement is welcome.
Inheritance: IHtmlClosureProvider, IHtmlClosureProviderTextRange
        public void IsImplicitlyClosedTest() {
            string[] implicitlyClosingElements = new string[]{
               "frame",
                "dd",
                "dt",
                "li",
                "Option",
                "p",
                "tbOdy",
                "tfoot",
                "TD",
                "th",
                "thead",
                "tr",
            };

            string[] notImplicitlyClosingElements = new string[]{
               "html",
                "123",
                " ",
                "!",
                "абвгд",
             };


            var target = new DefaultHtmlClosureProvider();
            bool actual;

            foreach (string s in implicitlyClosingElements) {
                string[] containerNames;

                actual = target.IsImplicitlyClosed(new TextStream(s), TextRange.FromBounds(0, s.Length), out containerNames);
                Assert.True(actual);
            }

            foreach (string s in notImplicitlyClosingElements) {
                string[] containerNames;

                actual = target.IsImplicitlyClosed(new TextStream(s), TextRange.FromBounds(0, s.Length), out containerNames);
                Assert.False(actual);
            }
        }
        public void IsSelfClosingTest() {
            string[] selfClosingElements = new string[]{
                "area",
                "base",
                "basefont",
                "br",
                "col",
                "command",
                "embed",
                "hr",
                "img",
                "input",
                "isindex",
                "link",
                "meta",
                "param",
                "source",
                "track",
                "wbr",
            };

            string[] notSelfClosingElements = new string[]{
               "html",
                "123",
                " ",
                "!",
                "абвгд",
             };


            var target = new DefaultHtmlClosureProvider();
            bool actual;

            foreach (string s in selfClosingElements) {
                actual = target.IsSelfClosing(new TextStream(s), TextRange.FromBounds(0, s.Length));
                Assert.True(actual);
            }

            foreach (string s in notSelfClosingElements) {
                actual = target.IsSelfClosing(new TextStream(s), TextRange.FromBounds(0, s.Length));
                Assert.False(actual);
            }
        }