diff --git a/testing/web-platform/tests/html/dom/elements/global-attributes/dataset-binding.window.js b/testing/web-platform/tests/html/dom/elements/global-attributes/dataset-binding.window.js
new file mode 100644
index 0000000000000..eef26ee50a2ee
--- /dev/null
+++ b/testing/web-platform/tests/html/dom/elements/global-attributes/dataset-binding.window.js
@@ -0,0 +1,364 @@
+[
+9
+"
+x
+"
+]
+.
+forEach
+(
+function
+(
+key
+)
+{
+test
+(
+function
+(
+)
+{
+var
+element
+=
+document
+.
+createElement
+(
+"
+div
+"
+)
+;
+var
+dataset
+=
+element
+.
+dataset
+;
+var
+value
+=
+"
+value
+for
+"
++
+this
+.
+name
+;
+assert_equals
+(
+dataset
+[
+key
+]
+undefined
+)
+;
+element
+.
+setAttribute
+(
+"
+data
+-
+"
++
+key
+value
+)
+;
+assert_equals
+(
+element
+.
+getAttribute
+(
+"
+data
+-
+"
++
+key
+)
+value
+)
+;
+assert_equals
+(
+dataset
+[
+key
+]
+value
+)
+;
+var
+propdesc
+=
+Object
+.
+getOwnPropertyDescriptor
+(
+dataset
+key
+)
+;
+assert_not_equals
+(
+propdesc
+undefined
+)
+;
+assert_equals
+(
+propdesc
+.
+value
+value
+)
+;
+assert_true
+(
+propdesc
+.
+writable
+)
+;
+assert_true
+(
+propdesc
+.
+enumerable
+)
+;
+assert_true
+(
+propdesc
+.
+configurable
+)
+;
+}
+"
+Getting
+property
+descriptor
+for
+key
+"
++
+key
+)
+;
+test
+(
+function
+(
+)
+{
+var
+element
+=
+document
+.
+createElement
+(
+"
+div
+"
+)
+;
+var
+dataset
+=
+element
+.
+dataset
+;
+var
+proto
+=
+"
+proto
+getter
+for
+"
++
+this
+.
+name
+;
+var
+calledSetter
+=
+[
+]
+;
+Object
+.
+defineProperty
+(
+DOMStringMap
+.
+prototype
+key
+{
+"
+get
+"
+:
+function
+(
+)
+{
+return
+proto
+;
+}
+"
+set
+"
+:
+this
+.
+unreached_func
+(
+"
+Should
+not
+call
+[
+[
+Set
+]
+]
+on
+prototype
+"
+)
+"
+configurable
+"
+:
+true
+}
+)
+;
+this
+.
+add_cleanup
+(
+function
+(
+)
+{
+delete
+DOMStringMap
+.
+prototype
+[
+key
+]
+;
+}
+)
+;
+var
+value
+=
+"
+value
+for
+"
++
+this
+.
+name
+;
+assert_equals
+(
+dataset
+[
+key
+]
+proto
+)
+;
+assert_equals
+(
+element
+.
+getAttribute
+(
+"
+data
+-
+"
++
+key
+)
+null
+)
+;
+assert_equals
+(
+dataset
+[
+key
+]
+=
+value
+value
+)
+;
+assert_equals
+(
+dataset
+[
+key
+]
+value
+)
+;
+assert_equals
+(
+element
+.
+getAttribute
+(
+"
+data
+-
+"
++
+key
+)
+value
+)
+;
+}
+"
+Setting
+property
+for
+key
+"
++
+key
++
+"
+with
+accessor
+property
+on
+prototype
+"
+)
+;
+}
+)
+;