diff --git a/Tests/LibWeb/Text/expected/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/script_005.txt b/Tests/LibWeb/Text/expected/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/script_005.txt
index 481e6599e00..f31951a9f48 100644
--- a/Tests/LibWeb/Text/expected/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/script_005.txt
+++ b/Tests/LibWeb/Text/expected/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/script_005.txt
@@ -2,5 +2,5 @@ Harness status: OK
Found 1 tests
-1 Fail
-Fail document.write external script
\ No newline at end of file
+1 Pass
+Pass document.write external script
\ No newline at end of file
diff --git a/Tests/LibWeb/Text/expected/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/script_008.txt b/Tests/LibWeb/Text/expected/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/script_008.txt
index 4b510d645a3..1fb367dff3e 100644
--- a/Tests/LibWeb/Text/expected/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/script_008.txt
+++ b/Tests/LibWeb/Text/expected/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/script_008.txt
@@ -2,5 +2,5 @@ Harness status: OK
Found 1 tests
-1 Fail
-Fail document.write external script that document.writes external script
\ No newline at end of file
+1 Pass
+Pass document.write external script that document.writes external script
\ No newline at end of file
diff --git a/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/005.js b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/005.js
new file mode 100644
index 00000000000..547b0aa7922
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/005.js
@@ -0,0 +1 @@
+order.push(3);
diff --git a/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/006.js b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/006.js
new file mode 100644
index 00000000000..547b0aa7922
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/006.js
@@ -0,0 +1 @@
+order.push(3);
diff --git a/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/008-1.js b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/008-1.js
new file mode 100644
index 00000000000..498b87341e7
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/008-1.js
@@ -0,0 +1,3 @@
+t.step(function() {
+ order.push(3);
+ });
diff --git a/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/010-1.js b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/010-1.js
new file mode 100644
index 00000000000..3f14b3d5b15
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/010-1.js
@@ -0,0 +1,4 @@
+t.step(function() {
+ order.push(4);
+ assert_equals(document.getElementsByTagName("meta").length, 1);
+ });
diff --git a/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/010.js b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/010.js
new file mode 100644
index 00000000000..bb328ad55af
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/010.js
@@ -0,0 +1,4 @@
+t.step(function() {
+ order.push(3);
+ assert_equals(document.getElementsByTagName("meta").length, 0);
+ });
diff --git a/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/011-1.js b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/011-1.js
new file mode 100644
index 00000000000..b7b0a2eaa74
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/011-1.js
@@ -0,0 +1,5 @@
+t.step(function() {
+ order.push(4);
+ document.write("");
+ assert_equals(document.getElementsByTagName("meta").length, 1);
+ });
diff --git a/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/011.js b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/011.js
new file mode 100644
index 00000000000..1447a740039
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/011.js
@@ -0,0 +1,5 @@
+t.step(function() {
+ order.push(3);
+ document.write("");
+ assert_equals(document.getElementsByTagName("meta").length, 0);
+ });
diff --git a/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/012.js b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/012.js
new file mode 100644
index 00000000000..55921c730ac
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/012.js
@@ -0,0 +1,5 @@
+t.step(
+function() {
+ order.push(5);
+ assert_equals(document.getElementsByTagName("meta").length, 0);
+});
diff --git a/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/iframe_005.js b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/iframe_005.js
new file mode 100644
index 00000000000..37e69ffc073
--- /dev/null
+++ b/Tests/LibWeb/Text/input/wpt-import/html/webappapis/dynamic-markup-insertion/document-write/iframe_005.js
@@ -0,0 +1,3 @@
+parent.order.push(3);
+document.write("");
+parent.order.push(5);