diff options
Diffstat (limited to 'test cases/d/14 dub with deps/test.d')
-rw-r--r-- | test cases/d/14 dub with deps/test.d | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/test cases/d/14 dub with deps/test.d b/test cases/d/14 dub with deps/test.d new file mode 100644 index 0000000..61b5bda --- /dev/null +++ b/test cases/d/14 dub with deps/test.d @@ -0,0 +1,59 @@ +module test; + +// testing import dirs +import xlsx; + +// dependency of xlsx +import dxml.dom; + +const xml = "<!-- comment -->\n" ~ + "<root>\n" ~ + " <foo>some text<whatever/></foo>\n" ~ + " <bar/>\n" ~ + " <baz></baz>\n" ~ + "</root>"; + +int main() +{ + // testing versions + version (Have_dxml) + { + import std.range.primitives : empty; + + auto dom = parseDOM(xml); + assert(dom.type == EntityType.elementStart); + assert(dom.name.empty); + assert(dom.children.length == 2); + + assert(dom.children[0].type == EntityType.comment); + assert(dom.children[0].text == " comment "); + + auto root = dom.children[1]; + assert(root.type == EntityType.elementStart); + assert(root.name == "root"); + assert(root.children.length == 3); + + auto foo = root.children[0]; + assert(foo.type == EntityType.elementStart); + assert(foo.name == "foo"); + assert(foo.children.length == 2); + + assert(foo.children[0].type == EntityType.text); + assert(foo.children[0].text == "some text"); + + assert(foo.children[1].type == EntityType.elementEmpty); + assert(foo.children[1].name == "whatever"); + + assert(root.children[1].type == EntityType.elementEmpty); + assert(root.children[1].name == "bar"); + + assert(root.children[2].type == EntityType.elementStart); + assert(root.children[2].name == "baz"); + assert(root.children[2].children.length == 0); + return 0; + } + else + { + return 1; + } +} |