Bug 1371073 - Add reftests to ensure rows and cols are properly added and removed from framesets
MozReview-Commit-ID: A6uLt8oSn6F
new file mode 100644
--- /dev/null
+++ b/layout/reftests/frameset/frameset-add-col-ref.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset=utf-8>
+ </head>
+ <frameset id="frameset" cols="*,*">
+ <frame />
+ <frame />
+ </frameset>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/frameset/frameset-add-col.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+ <head>
+ <meta charset=utf-8>
+ <script type="text/javascript">
+ window.addEventListener("MozReftestInvalidate", () => {
+ let frameset = document.getElementById("frameset");
+ let newFrame = document.createElement("frame");
+ frameset.appendChild(newFrame);
+ frameset.cols = "*";
+
+ newFrame = document.createElement("frame");
+ frameset.appendChild(newFrame);
+ frameset.cols = frameset.cols + ",*";
+
+ document.documentElement.removeAttribute("class");
+ });
+ </script>
+ </head>
+ <frameset id="frameset" cols="">
+ </frameset>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/frameset/frameset-add-row-ref.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset=utf-8>
+ </head>
+ <frameset id="frameset" rows="*,*">
+ <frame />
+ <frame />
+ </frameset>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/frameset/frameset-add-row.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+ <head>
+ <meta charset=utf-8>
+ <script type="text/javascript">
+ window.addEventListener("MozReftestInvalidate", () => {
+ let frameset = document.getElementById("frameset");
+ let newFrame = document.createElement("frame");
+ frameset.appendChild(newFrame);
+ frameset.rows = "*";
+
+ newFrame = document.createElement("frame");
+ frameset.appendChild(newFrame);
+ frameset.rows = frameset.rows + ",*";
+
+ document.documentElement.removeAttribute("class");
+ });
+ </script>
+ </head>
+ <frameset id="frameset" rows="">
+ </frameset>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/frameset/frameset-remove-col-ref.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset=utf-8>
+ </head>
+ <frameset id="frameset" cols="*,*">
+ <frame />
+ <frame />
+ </frameset>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/frameset/frameset-remove-col.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+ <head>
+ <meta charset=utf-8>
+ <script type="text/javascript">
+ window.addEventListener("MozReftestInvalidate", () => {
+ let frameset = document.getElementById("frameset");
+ frameset.removeChild(frameset.lastChild);
+ frameset.cols = frameset.cols.replace(/,[^,]*$/, "");
+
+ document.documentElement.removeAttribute("class");
+ });
+ </script>
+ </head>
+ <frameset id="frameset" cols="*,*,*">
+ <frame />
+ <frame />
+ <frame />
+ </frameset>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/frameset/frameset-remove-row-ref.html
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset=utf-8>
+ </head>
+ <frameset id="frameset" rows="*,*">
+ <frame />
+ <frame />
+ </frameset>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/frameset/frameset-remove-row.html
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+ <head>
+ <meta charset=utf-8>
+ <script type="text/javascript">
+ window.addEventListener("MozReftestInvalidate", () => {
+ let frameset = document.getElementById("frameset");
+ frameset.removeChild(frameset.lastChild);
+ frameset.rows = frameset.rows.replace(/,[^,]*$/, "");
+
+ document.documentElement.removeAttribute("class");
+ });
+ </script>
+ </head>
+ <frameset id="frameset" rows="*,*,*">
+ <frame />
+ <frame />
+ <frame />
+ </frameset>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/frameset/reftest.list
@@ -0,0 +1,4 @@
+== frameset-add-row.html frameset-add-row-ref.html
+== frameset-remove-row.html frameset-remove-row-ref.html
+== frameset-add-col.html frameset-add-col-ref.html
+== frameset-remove-col.html frameset-remove-col-ref.html
--- a/layout/reftests/reftest.list
+++ b/layout/reftests/reftest.list
@@ -203,16 +203,19 @@ include font-inflation/reftest.list
include font-loading-api/reftest.list
# font matching
include font-matching/reftest.list
# forms
include forms/reftest.list
+# frameset
+include frameset/reftest.list
+
# gfx
include ../../gfx/tests/reftest/reftest.list
# block-inside-inline splits
include ib-split/reftest.list
# image/
include image/reftest.list