summaryrefslogtreecommitdiffstats
path: root/layout/style/test/test_exposed_prop_accessors.html
diff options
context:
space:
mode:
Diffstat (limited to 'layout/style/test/test_exposed_prop_accessors.html')
-rw-r--r--layout/style/test/test_exposed_prop_accessors.html41
1 files changed, 41 insertions, 0 deletions
diff --git a/layout/style/test/test_exposed_prop_accessors.html b/layout/style/test/test_exposed_prop_accessors.html
new file mode 100644
index 0000000000..765818bae4
--- /dev/null
+++ b/layout/style/test/test_exposed_prop_accessors.html
@@ -0,0 +1,41 @@
+<!DOCTYPE HTML>
+<html>
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=375363
+-->
+<head>
+ <title>Test for cloning of CSS property values (including 'inherit', 'initial' and 'unset')</title>
+ <script src="/tests/SimpleTest/SimpleTest.js"></script>
+ <script type="text/javascript" src="property_database.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
+</head>
+<body>
+<p id="display"></p>
+<pre id="test">
+<script class="testbody" type="text/javascript">
+
+/**
+ * Test that makes sure that we have exposed getters/setters for all the
+ * various variants of our CSS property names that the spec calls for.
+ */
+for (var prop in gCSSProperties) {
+ var info = gCSSProperties[prop];
+
+ var s = document.createElement("div").style;
+
+ is(s[info.domProp], "", prop + " should not be set yet");
+ s[info.domProp] = info.initial_values[0];
+ isnot(s[info.domProp], "", prop + " should now be set");
+ is(s[prop], s[info.domProp],
+ "Getting " + prop + " via name should work")
+ s = document.createElement("div").style;
+ is(s[info.domProp], "", prop + " should not be set here either");
+ s[prop] = info.initial_values[0];
+ isnot(s[info.prop], "", prop + " should now be set again");
+ is(s[info.domProp], s[prop],
+ "Setting " + prop + " via name should work");
+}
+</script>
+</pre>
+</body>
+</html>