<html>
<head>
<script>
function debug(str) {
    pre = document.getElementById('console');
    txt = document.createTextNode(str + '\n')
    pre.appendChild(txt)
}
function runTests() {
    if (window.layoutTestController)
        layoutTestController.dumpAsText()

    var elem = document.createElementNS('http://www.example.org', 'test:p')
    var importedNode = document.importNode(elem, true)
    
    if (importedNode.prefix != 'test') {
        debug('FAILURE: imported node has wrong prefix')
        return
    }
    
    debug('SUCCESS!')
}

</script>
</head>
<body onload="runTests();">
This tests that an element which is cloned by using importNode keeps its prefix. If the test is successful, 'SUCCESS' will be displayed below, otherwise 'FAILURE' and a reason will be displayed.
<pre id="console">
</pre>
</body>
</html>
