<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Test for base URIs</title> <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> <base href="/tests/dom/base/" /> <style> #bound { -moz-binding: url("test/file_base_xbl.xml#test"); } </style> </head> <body> <div id="1" xml:base="supercalifragilisticexpialidocious"><p><p xml:base="hello/"><p xml:base="world"><span xml:base="#iamtheverymodelofamodernmajorgeneral">text</span></p></p></p></div> <div id="bound"/> <pre id="test"> <script type="application/javascript"> SimpleTest.waitForExplicitFinish(); addLoadEvent(function() { is(document.baseURI, "http://mochi.test:8888/tests/dom/base/", "document base"); is(document.body.baseURI, "http://mochi.test:8888/tests/dom/base/", "body base"); var expected = ["http://mochi.test:8888/tests/dom/base/supercalifragilisticexpialidocious", "http://mochi.test:8888/tests/dom/base/supercalifragilisticexpialidocious", "http://mochi.test:8888/tests/dom/base/hello/", "http://mochi.test:8888/tests/dom/base/hello/world", "http://mochi.test:8888/tests/dom/base/hello/world#iamtheverymodelofamodernmajorgeneral", "http://mochi.test:8888/tests/dom/base/hello/world#iamtheverymodelofamodernmajorgeneral", ]; var node = document.getElementById("1"); while(node) { is(node.baseURI, expected.shift(), "node base"); node = node.firstChild; } is(expected.length, 0, "found all expected nodes"); var svgExpected = ["http://mochi.test:8888/tests/dom/base/test/file_base_xbl.xml", "http://mochi.test:8888/tests/dom/base/test/file_base_xbl.xml", "http://mochi.test:8888/tests/dom/base/test/file_base_xbl.xml#shesellsseashellsbytheseashore", ]; node = SpecialPowers.wrap(document).getAnonymousNodes(document.getElementById("bound"))[0]; while(node) { is(node.baseURI, svgExpected.shift(), "node base"); node = node.firstChild; } is(svgExpected.length, 0, "found all expected nodes"); SimpleTest.finish(); }); </script> </pre> </body> </html>