summaryrefslogtreecommitdiffstats
path: root/layout/reftests/webkit-box/webkit-box-ordinal-group-3.html
diff options
context:
space:
mode:
Diffstat (limited to 'layout/reftests/webkit-box/webkit-box-ordinal-group-3.html')
-rw-r--r--layout/reftests/webkit-box/webkit-box-ordinal-group-3.html103
1 files changed, 103 insertions, 0 deletions
diff --git a/layout/reftests/webkit-box/webkit-box-ordinal-group-3.html b/layout/reftests/webkit-box/webkit-box-ordinal-group-3.html
new file mode 100644
index 0000000000..3455365da0
--- /dev/null
+++ b/layout/reftests/webkit-box/webkit-box-ordinal-group-3.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html>
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html>
+<head>
+ <title>
+ CSS Test: -webkit-box-ordinal-group with huge values inside a -webkit-box
+ </title>
+ <style>
+ .box {
+ display: -webkit-box;
+ border: 1px solid black;
+ margin: 5px 20px;
+ float: left; /* For testing in "rows" */
+ }
+ br { clear: both; }
+
+ .box > * {
+ border: 1px dotted purple;
+ }
+
+ .bogTen { -webkit-box-ordinal-group: 10; }
+ .bogHugeA { -webkit-box-ordinal-group: 2147483646; /* 2^31 - 2 */ }
+ .bogHugeB {
+ /* NOTE: This is INT32_MAX, so we may not be able to distinguish this
+ from anything larger than it (if we represent it internally in a
+ 32-bit signed integer). However, it's still worth testing larger
+ values against e.g. 10 to be sure they don't overflow into
+ negative territory. */
+ -webkit-box-ordinal-group: 2147483647; /* 2^31 - 1 */ }
+
+ .bogHugeC { -webkit-box-ordinal-group: 4294967294; /* 2^32 - 2 */ }
+ .bogHugeD { -webkit-box-ordinal-group: 4294967295; /* 2^32 - 1 */ }
+ .bogHugeE { -webkit-box-ordinal-group: 4294967296; /* 2^32 */ }
+ .bogHugeF { -webkit-box-ordinal-group: 8589934592; /* 2^33 */ }
+ </style>
+</head>
+<body>
+ <!-- Test each huge value to see if it sorts after smaller values.
+ (The divs with huge values should sort to the right.) -->
+ <div class="box">
+ <div class="bogHugeA">A</div>
+ <div class="bogTen">10</div>
+ <div>*</div>
+ </div>
+ <div class="box">
+ <div class="bogHugeB">B</div>
+ <div class="bogTen">10</div>
+ <div>*</div>
+ </div>
+ <div class="box">
+ <div class="bogHugeC">C</div>
+ <div class="bogTen">10</div>
+ <div>*</div>
+ </div>
+
+ <br>
+
+ <div class="box">
+ <div class="bogHugeD">D</div>
+ <div class="bogTen">10</div>
+ <div>*</div>
+ </div>
+ <div class="box">
+ <div class="bogHugeE">E</div>
+ <div class="bogTen">10</div>
+ <div>*</div>
+ </div>
+ <div class="box">
+ <div class="bogHugeE">F</div>
+ <div class="bogTen">10</div>
+ <div>*</div>
+ </div>
+
+ <br>
+
+ <!-- Test that 'bogHugeA' sorts to the left of larger huge values. It's
+ less than INT32_MAX, so it's reasonable to expect that it can be
+ compared correctly against (possibly-clamped) larger values) -->
+ <div class="box">
+ <div class="bogHugeB">B</div>
+ <div class="bogHugeA">A</div>
+ </div>
+ <div class="box">
+ <div class="bogHugeC">C</div>
+ <div class="bogHugeA">A</div>
+ </div>
+ <div class="box">
+ <div class="bogHugeD">D</div>
+ <div class="bogHugeA">A</div>
+ </div>
+ <div class="box">
+ <div class="bogHugeE">E</div>
+ <div class="bogHugeA">A</div>
+ </div>
+ <div class="box">
+ <div class="bogHugeF">F</div>
+ <div class="bogHugeA">A</div>
+ </div>
+</body>
+</html>