michael@0: function run_test () {
michael@0: for (var i = 0; i < tests.length && tests[i][0]; ++i) {
michael@0: if (!tests[i][0].call()) {
michael@0: do_throw(tests[i][1]);
michael@0: }
michael@0: }
michael@0: }
michael@0:
michael@0: var tests = [
michael@0: [ test1, "Unable to parse basic XML document" ],
michael@0: [ test2, "ParseXML doesn't return nsIDOMDocument" ],
michael@0: [ test3, "ParseXML return value's documentElement is not nsIDOMElement" ],
michael@0: [ test4, "" ],
michael@0: [ test5, "" ],
michael@0: [ test6, "" ],
michael@0: [ null ]
michael@0: ];
michael@0:
michael@0: function test1() {
michael@0: return ParseXML("");
michael@0: }
michael@0:
michael@0: function test2() {
michael@0: return (ParseXML("") instanceof nsIDOMDocument);
michael@0: }
michael@0:
michael@0: function test3() {
michael@0: return (ParseXML("").documentElement instanceof nsIDOMElement);
michael@0: }
michael@0:
michael@0: function test4() {
michael@0: var doc = ParseXML("");
michael@0: do_check_eq(doc.documentElement.namespaceURI, null);
michael@0: return true;
michael@0: }
michael@0:
michael@0: function test5() {
michael@0: var doc = ParseXML("");
michael@0: do_check_eq(doc.documentElement.namespaceURI, null);
michael@0: return true;
michael@0: }
michael@0:
michael@0: function test6() {
michael@0: var doc = ParseXML("");
michael@0: do_check_neq(doc.documentElement.namespaceURI, null);
michael@0: do_check_eq(doc.documentElement.namespaceURI, 'ns1');
michael@0: return true;
michael@0: }