Bug 809020 - Reftest for breaking near word beginning/end (the "conservative" breaking range). r=masayuki
authorJonathan Kew <jkew@mozilla.com>
Wed, 01 Mar 2017 22:47:56 +0000
changeset 374562 283f43e8790b268c6f5316b007fddb6658b6dfba
parent 374561 05c3c56d71a7266d116afbe23fc1b3459217f2c4
child 374563 e980c683af8cb856dbb7409373d2cef7972fb4ca
push id10863
push userjlorenzo@mozilla.com
push dateMon, 06 Mar 2017 23:02:23 +0000
treeherdermozilla-aurora@0931190cd725 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmasayuki
bugs809020
milestone54.0a1
Bug 809020 - Reftest for breaking near word beginning/end (the "conservative" breaking range). r=masayuki
layout/reftests/line-breaking/conservative-range-1-ref.html
layout/reftests/line-breaking/conservative-range-1.html
layout/reftests/line-breaking/conservative-range-2-ref.html
layout/reftests/line-breaking/conservative-range-2.html
layout/reftests/line-breaking/reftest.list
new file mode 100644
--- /dev/null
+++ b/layout/reftests/line-breaking/conservative-range-1-ref.html
@@ -0,0 +1,68 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset=utf-8>
+<title>Bug 809020</title>
+<style>
+p { 
+  font-family: monospace;
+  margin: .5em 0;
+}
+.break {
+  color: green;
+}
+.nobreak {
+  color: red;
+}
+</style>
+</head>
+<body>
+The green examples should break at all their hyphens; the red ones should not.
+<p class="nobreak">
+T-shirt
+</p>
+<p class="nobreak">
+billy-o
+</p>
+<p class="break">
+tally-<br>ho
+</p>
+<p class="break">
+co-<br>author
+</p>
+<p class="break">
+hi-<br>de-<br>hi
+</p>
+<p class="break">
+far-<br>sighted
+</p>
+<p class="break">
+hocus-<br>pocus
+</p>
+<p class="break">
+Nanki-<br>Poo
+</p>
+<p class="break">
+Miami-<br>Dade
+</p>
+<p class="break">
+Wells-<br>next-<br>the-<br>Sea
+</p>
+<p class="break">
+Lee-<br>on-<br>the-<br>Solent
+</p>
+<p class="nobreak">
+\\/^-_-^\//
+</p>
+<p class="nobreak">
+(''')-.-(''')
+<p class="nobreak">
+:-"&gt;
+<p class="nobreak">
+&lt;{^-^}&gt;
+</p>
+<p class="nobreak">
+:-D
+</p>
+</body>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/line-breaking/conservative-range-1.html
@@ -0,0 +1,69 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset=utf-8>
+<title>Bug 809020</title>
+<style>
+p { 
+  font-family: monospace;
+  margin: .5em 0;
+  width:0;
+}
+.break {
+  color: green;
+}
+.nobreak {
+  color: red;
+}
+</style>
+</head>
+<body>
+The green examples should break at all their hyphens; the red ones should not.
+<p class="nobreak">
+T-shirt
+</p>
+<p class="nobreak">
+billy-o
+</p>
+<p class="break">
+tally-ho
+</p>
+<p class="break">
+co-author
+</p>
+<p class="break">
+hi-de-hi
+</p>
+<p class="break">
+far-sighted
+</p>
+<p class="break">
+hocus-pocus
+</p>
+<p class="break">
+Nanki-Poo
+</p>
+<p class="break">
+Miami-Dade
+</p>
+<p class="break">
+Wells-next-the-Sea
+</p>
+<p class="break">
+Lee-on-the-Solent
+</p>
+<p class="nobreak">
+\\/^-_-^\//
+</p>
+<p class="nobreak">
+(''')-.-(''')
+<p class="nobreak">
+:-"&gt;
+<p class="nobreak">
+&lt;{^-^}&gt;
+</p>
+<p class="nobreak">
+:-D
+</p>
+</body>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/line-breaking/conservative-range-2-ref.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset=utf-8>
+<title>Bug 809020</title>
+<style>
+p { 
+  font-family: monospace;
+  margin: 1em 0;
+}
+</style>
+</head>
+<body>
+
+Line breaks should always occur before a '/' character,
+and no fragment should be less than 6 chars long.
+
+<p>/a/a</p>
+<p>/a/a/a</p>
+<p>/a/a/a/a</p>
+<p>/a/a/a/a/a</p>
+<p>/a/a/a<br>/a/a/a</p>
+
+<p>/aa/aa<br>/aa/aa<br>/aa/aa/aa</p>
+<p>/aaa/aaa<br>/aaa/aaa/aaa</p>
+<p>/aaaa/aaaa<br>/aaaa/aaaa</p>
+<p>/aaaaa<br>/aaaaa<br>/aaaaa</p>
+<p>/aaaaaa<br>/aaaaaa<br>/aaaaaa</p>
+
+<p>/a/ab/abc<br>/abcd/abcde<br>/abcdef<br>/abcdefg</p>
+<p>/abcdefg<br>/abcdef<br>/abcde<br>/abcd/abc/ab/a</p>
+
+</body>
+</html>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/line-breaking/conservative-range-2.html
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset=utf-8>
+<title>Bug 809020</title>
+<style>
+p { 
+  font-family: monospace;
+  margin: 1em 0;
+  width:0;
+}
+</style>
+</head>
+<body>
+
+Line breaks should always occur before a '/' character,
+and no fragment should be less than 6 chars long.
+
+<p>/a/a</p>
+<p>/a/a/a</p>
+<p>/a/a/a/a</p>
+<p>/a/a/a/a/a</p>
+<p>/a/a/a/a/a/a</p>
+
+<p>/aa/aa/aa/aa/aa/aa/aa</p>
+<p>/aaa/aaa/aaa/aaa/aaa</p>
+<p>/aaaa/aaaa/aaaa/aaaa</p>
+<p>/aaaaa/aaaaa/aaaaa</p>
+<p>/aaaaaa/aaaaaa/aaaaaa</p>
+
+<p>/a/ab/abc/abcd/abcde/abcdef/abcdefg</p>
+<p>/abcdefg/abcdef/abcde/abcd/abc/ab/a</p>
+
+</body>
+</html>
--- a/layout/reftests/line-breaking/reftest.list
+++ b/layout/reftests/line-breaking/reftest.list
@@ -1,10 +1,12 @@
 == between-whitespaces.html between-whitespaces-ref.html
 == chemical-1.html chemical-1-ref.html
+fails == conservative-range-1.html conservative-range-1-ref.html
+== conservative-range-2.html conservative-range-2-ref.html
 == currency-1.html currency-1-ref.html
 == currency-2.html currency-2-ref.html
 == datetime-1.html datetime-1-ref.html
 == emoji-1.html emoji-1-ref.html
 == emoji-2.html emoji-2-ref.html
 == hyphens-1.html hyphens-1-ref.html
 == hyphens-2.html hyphens-2-ref.html
 # The following three tests may fail if rendering with Core Text (see bug 389074)