diff --git a/loading/lazyload/attribute_off_iframe.tentative.sub.html b/loading/lazyload/attribute_off_iframe.tentative.sub.html
new file mode 100644
index 000000000000000..828c630c7dcd715
--- /dev/null
+++ b/loading/lazyload/attribute_off_iframe.tentative.sub.html
@@ -0,0 +1,41 @@
+
+
+ Loading iframes with lazyload="off"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/attribute_off_image.tentative.html b/loading/lazyload/attribute_off_image.tentative.html
new file mode 100644
index 000000000000000..c127b9ce2a2667b
--- /dev/null
+++ b/loading/lazyload/attribute_off_image.tentative.html
@@ -0,0 +1,41 @@
+
+
+ Loading images with lazyload="off"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/change_attribute_to_off_iframe.tentative.sub.html b/loading/lazyload/change_attribute_to_off_iframe.tentative.sub.html
new file mode 100644
index 000000000000000..e47cea24197a0b8
--- /dev/null
+++ b/loading/lazyload/change_attribute_to_off_iframe.tentative.sub.html
@@ -0,0 +1,66 @@
+
+
+ Iframes load immediately when lazyload attribute is changed to "off"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/change_attribute_to_off_image.tentative.html b/loading/lazyload/change_attribute_to_off_image.tentative.html
new file mode 100644
index 000000000000000..afe2c6771a5cb63
--- /dev/null
+++ b/loading/lazyload/change_attribute_to_off_image.tentative.html
@@ -0,0 +1,66 @@
+
+
+ Images load immediately when lazyload attribute is changed to "off"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/resources/image_1.png b/loading/lazyload/resources/image_1.png
new file mode 100644
index 000000000000000..b712825093805d1
Binary files /dev/null and b/loading/lazyload/resources/image_1.png differ
diff --git a/loading/lazyload/resources/image_2.png b/loading/lazyload/resources/image_2.png
new file mode 100644
index 000000000000000..b712825093805d1
Binary files /dev/null and b/loading/lazyload/resources/image_2.png differ
diff --git a/loading/lazyload/resources/image_3.png b/loading/lazyload/resources/image_3.png
new file mode 100644
index 000000000000000..b712825093805d1
Binary files /dev/null and b/loading/lazyload/resources/image_3.png differ
diff --git a/loading/lazyload/resources/image_4.png b/loading/lazyload/resources/image_4.png
new file mode 100644
index 000000000000000..b712825093805d1
Binary files /dev/null and b/loading/lazyload/resources/image_4.png differ
diff --git a/loading/lazyload/resources/subframe_1.html b/loading/lazyload/resources/subframe_1.html
new file mode 100644
index 000000000000000..98c0cec670823a7
--- /dev/null
+++ b/loading/lazyload/resources/subframe_1.html
@@ -0,0 +1,5 @@
+
+
+ Subframe 1.
+
+
diff --git a/loading/lazyload/resources/subframe_2.html b/loading/lazyload/resources/subframe_2.html
new file mode 100644
index 000000000000000..47c3c711ef50457
--- /dev/null
+++ b/loading/lazyload/resources/subframe_2.html
@@ -0,0 +1,5 @@
+
+
+ Subframe 2.
+
+
diff --git a/loading/lazyload/resources/subframe_3.html b/loading/lazyload/resources/subframe_3.html
new file mode 100644
index 000000000000000..9ab310578111274
--- /dev/null
+++ b/loading/lazyload/resources/subframe_3.html
@@ -0,0 +1,5 @@
+
+
+ Subframe 3.
+
+
diff --git a/loading/lazyload/resources/subframe_4.html b/loading/lazyload/resources/subframe_4.html
new file mode 100644
index 000000000000000..b1299fb4023ca49
--- /dev/null
+++ b/loading/lazyload/resources/subframe_4.html
@@ -0,0 +1,5 @@
+
+
+ Subframe 4.
+
+
diff --git a/loading/lazyload/scroll_to_attribute_auto_iframe.tentative.sub.html b/loading/lazyload/scroll_to_attribute_auto_iframe.tentative.sub.html
new file mode 100644
index 000000000000000..13e921a6bf1f992
--- /dev/null
+++ b/loading/lazyload/scroll_to_attribute_auto_iframe.tentative.sub.html
@@ -0,0 +1,47 @@
+
+
+ Iframes with lazyload="auto" load when in the viewport
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/scroll_to_attribute_auto_image.tentative.html b/loading/lazyload/scroll_to_attribute_auto_image.tentative.html
new file mode 100644
index 000000000000000..6d95ab04f7219be
--- /dev/null
+++ b/loading/lazyload/scroll_to_attribute_auto_image.tentative.html
@@ -0,0 +1,47 @@
+
+
+ Images with lazyload="auto" load when in the viewport
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/scroll_to_attribute_invalid_iframe.tentative.sub.html b/loading/lazyload/scroll_to_attribute_invalid_iframe.tentative.sub.html
new file mode 100644
index 000000000000000..0b30b5a550642dd
--- /dev/null
+++ b/loading/lazyload/scroll_to_attribute_invalid_iframe.tentative.sub.html
@@ -0,0 +1,47 @@
+
+
+ Iframes with invalid values for lazyload attributes load when in the viewport
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/scroll_to_attribute_invalid_image.tentative.html b/loading/lazyload/scroll_to_attribute_invalid_image.tentative.html
new file mode 100644
index 000000000000000..4ee74f96f651042
--- /dev/null
+++ b/loading/lazyload/scroll_to_attribute_invalid_image.tentative.html
@@ -0,0 +1,47 @@
+
+
+ Images with an invalid lazyload attribute load when in the viewport
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/scroll_to_attribute_on_iframe.tentative.sub.html b/loading/lazyload/scroll_to_attribute_on_iframe.tentative.sub.html
new file mode 100644
index 000000000000000..7a82b196e07f702
--- /dev/null
+++ b/loading/lazyload/scroll_to_attribute_on_iframe.tentative.sub.html
@@ -0,0 +1,47 @@
+
+
+ Iframes with lazyload="on" load when in the viewport
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/scroll_to_attribute_on_image.tentative.html b/loading/lazyload/scroll_to_attribute_on_image.tentative.html
new file mode 100644
index 000000000000000..ca0b18884a7b27b
--- /dev/null
+++ b/loading/lazyload/scroll_to_attribute_on_image.tentative.html
@@ -0,0 +1,47 @@
+
+
+ Images with lazyload="on" load when in the viewport
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/scroll_to_attribute_unset_iframe.tentative.sub.html b/loading/lazyload/scroll_to_attribute_unset_iframe.tentative.sub.html
new file mode 100644
index 000000000000000..66ebff14479e7b3
--- /dev/null
+++ b/loading/lazyload/scroll_to_attribute_unset_iframe.tentative.sub.html
@@ -0,0 +1,47 @@
+
+
+ Iframes with unset lazyload attributes load when in the viewport
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/scroll_to_attribute_unset_image.tentative.html b/loading/lazyload/scroll_to_attribute_unset_image.tentative.html
new file mode 100644
index 000000000000000..5ac8a78d652766f
--- /dev/null
+++ b/loading/lazyload/scroll_to_attribute_unset_image.tentative.html
@@ -0,0 +1,47 @@
+
+
+ Images without a lazyload attribute load when in the viewport
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/window_load_event_occurs_with_below_viewport_iframe.tentative.sub.html b/loading/lazyload/window_load_event_occurs_with_below_viewport_iframe.tentative.sub.html
new file mode 100644
index 000000000000000..1ec9b34322967e8
--- /dev/null
+++ b/loading/lazyload/window_load_event_occurs_with_below_viewport_iframe.tentative.sub.html
@@ -0,0 +1,34 @@
+
+
+ Below-viewport iframes don't endlessly delay the window load event.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/loading/lazyload/window_load_event_occurs_with_below_viewport_image.tentative.html b/loading/lazyload/window_load_event_occurs_with_below_viewport_image.tentative.html
new file mode 100644
index 000000000000000..e76c5bdfb0181a1
--- /dev/null
+++ b/loading/lazyload/window_load_event_occurs_with_below_viewport_image.tentative.html
@@ -0,0 +1,34 @@
+
+
+ Below-viewport images don't endlessly delay the window load event.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+