ladybird/Tests/LibWeb/Text/input/HTML/document-readyState-is-initially-complete.html
mikiubo ff78746be1 LibWeb: Set readyState to complete for DOMParser documents
Documents created via DOMParser.parseFromString()
are parsed synchronously and do not participate in the
browsing context's loading pipeline.

This patch ensures that if the document has no browsing context
(i.e. was parsed via DOMParser),
its readiness is set to "complete" synchronously.

Fixes WPT:
domparsing/xmldomparser.html
2025-06-25 20:49:03 +12:00

14 lines
979 B
HTML

<!DOCTYPE html>
<script src="../include.js"></script>
<script>
test(() => {
println(`readyState of 'new Document()' should be 'complete': '${new Document().readyState}'`);
println(`readyState of 'document.implementation.createHTMLDocument()' should be 'complete': '${document.implementation.createHTMLDocument().readyState}'`);
println(`readyState of 'document.implementation.createDocument()' should be 'complete': '${document.implementation.createDocument('http://www.w3.org/1999/xhtml', '').readyState}'`);
println(`readyState of 'new DOMParser().parseFromString('', 'text/html')' should be 'complete': '${new DOMParser().parseFromString('', 'text/html').readyState}'`);
const iframe = document.createElement("iframe");
document.body.appendChild(iframe);
println(`readyState of 'iframe.contentDocument' of initial about:blank iframe should be 'complete': '${iframe.contentDocument.readyState}'`);
});
</script>