Add tests for font.size.inflation.lineThreshold preference and the associated threshold behavior. (Bug 706193, patch 5) r=roc
authorL. David Baron <dbaron@dbaron.org>
Mon, 16 Apr 2012 15:32:12 -0700
changeset 95107 e44a95efa5f098cfd5f41d68371a407427f7c7ef
parent 95106 0c18caf33991da536864054f0dbaa7037332eab3
child 95108 ad0867e065d81f52e99fe49eaddf85395bf9bced
push id886
push userlsblakk@mozilla.com
push dateMon, 04 Jun 2012 19:57:52 +0000
treeherdermozilla-beta@bbd8d5efd6d1 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersroc
bugs706193
milestone14.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Add tests for font.size.inflation.lineThreshold preference and the associated threshold behavior. (Bug 706193, patch 5) r=roc
layout/reftests/font-inflation/reftest.list
layout/reftests/font-inflation/threshold-1a.html
layout/reftests/font-inflation/threshold-1b-ref.html
layout/reftests/font-inflation/threshold-1b.html
layout/reftests/font-inflation/threshold-1c-ref.html
layout/reftests/font-inflation/threshold-1c.html
layout/reftests/font-inflation/threshold-2-ref.html
layout/reftests/font-inflation/threshold-2.html
layout/reftests/font-inflation/threshold-3-ref.html
layout/reftests/font-inflation/threshold-3.html
layout/reftests/font-inflation/threshold-scope-cell-1-ref.html
layout/reftests/font-inflation/threshold-scope-cell-1.html
layout/reftests/font-inflation/threshold-scope-cell-2-ref.html
layout/reftests/font-inflation/threshold-scope-cell-2.html
layout/reftests/font-inflation/threshold-scope-cell-3-ref.html
layout/reftests/font-inflation/threshold-scope-cell-3.html
layout/reftests/font-inflation/threshold-scope-float-1-ref.html
layout/reftests/font-inflation/threshold-scope-float-1.html
layout/reftests/font-inflation/threshold-scope-float-2-ref.html
layout/reftests/font-inflation/threshold-scope-float-2.html
layout/reftests/font-inflation/threshold-scope-float-overflow-1-ref.html
layout/reftests/font-inflation/threshold-scope-float-overflow-1.html
layout/reftests/font-inflation/threshold-scope-float-overflow-2-ref.html
layout/reftests/font-inflation/threshold-scope-float-overflow-2.html
--- a/layout/reftests/font-inflation/reftest.list
+++ b/layout/reftests/font-inflation/reftest.list
@@ -1,8 +1,15 @@
+# The following tests were written before
+# font.size.inflation.lineThreshold was implemented, and thus assumed
+# that there wasn't a threshold of text required for inflation.  To run
+# them compatibly without having to rewrite all of them, we run them
+# with the lineThreshold preference explicitly set to zero.  However,
+# newer tests should probably focus more on testing nonzero values of
+# that preference.
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == text-1.html text-1-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == text-2.html text-2-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == text-3.html text-3-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == text-4.html text-4-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == decoration-1.html decoration-1-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == bullet-1.html bullet-1-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == bullet-2.html bullet-2-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == input-text-1-height.html input-text-1-height-ref.html
@@ -40,8 +47,23 @@ asserts-if(gtk2Widget,0-2) test-pref(fon
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == disable-fontinfl-on-mobile.html disable-fontinfl-on-mobile-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == disable-fontinfl-on-mobile-2.html disable-fontinfl-on-mobile-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == disable-fontinfl-on-mobile-3.html disable-fontinfl-on-mobile-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == disable-fontinfl-on-mobile-4.html disable-fontinfl-on-mobile-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == preformatted-text.html preformatted-text-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == fixed-height-body.html fixed-height-body-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == fixed-height-body-child.html fixed-height-body-child-ref.html
 test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,0) == consecutive-inline.html consecutive-inline-ref.html
+
+# The tests below use nonzero values of the lineThreshold preference.
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == text-1.html text-1.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-1a.html threshold-1a.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-1b.html threshold-1b-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-1c.html threshold-1c-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-2.html threshold-2-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-3.html threshold-3-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-scope-float-1.html threshold-scope-float-1-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-scope-float-2.html threshold-scope-float-2-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-scope-float-overflow-1.html threshold-scope-float-overflow-1-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-scope-float-overflow-2.html threshold-scope-float-overflow-2-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-scope-cell-1.html threshold-scope-cell-1-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-scope-cell-2.html threshold-scope-cell-2-ref.html
+test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) == threshold-scope-cell-3.html threshold-scope-cell-3-ref.html
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-1a.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<p>123456789
+123456789
+123456789
+123456789
+123456789</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-1b-ref.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test</title>
+<style>
+body { font-size: 44px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p>123456789
+123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-1b.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p>123456789
+123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-1c-ref.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test</title>
+<style>
+body { font-size: 44px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p>123456789
+123456789
+123456789
+123456789
+12345678901</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-1c.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p>123456789
+123456789
+123456789
+123456789
+12345678901</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-2-ref.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: separate blocks count together</title>
+<style>
+body { font-size: 44px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p>1234567890</p>
+<p>123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-2.html
@@ -0,0 +1,18 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: separate blocks count together</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p>1234567890</p>
+<p>123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-3-ref.html
@@ -0,0 +1,20 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: separate blocks count together</title>
+<style>
+body { font-size: 44px; width: 600px; }
+h1, p { margin: 0 }
+h1 { font-size: 56px; }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p>1234567890</p>
+<h1>Heading</h1>
+<p>123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-3.html
@@ -0,0 +1,20 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: separate blocks count together</title>
+<style>
+body { font-size: 12px; width: 600px; }
+h1, p { margin: 0 }
+h1 { font-size: 48px; }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p>1234567890</p>
+<h1>Heading</h1>
+<p>123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-cell-1-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<table><tr><td style="width: 600px; font-size: 44px">123456789
+123456789
+123456789
+123456789
+1234567890</td></tr>
+<tr><td>123456789
+123456789
+123456789
+123456789
+123456789</td></tr>
+</table>
+<p>123456789
+123456789
+123456789
+123456789
+123456789</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-cell-1.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<table><tr><td style="width: 600px">123456789
+123456789
+123456789
+123456789
+1234567890</td></tr>
+<tr><td>123456789
+123456789
+123456789
+123456789
+123456789</td></tr>
+</table>
+<p>123456789
+123456789
+123456789
+123456789
+123456789</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-cell-2-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<table><tr><td style="width: 600px">123456789
+123456789
+123456789
+123456789
+123456789</td></tr>
+<tr><td style="font-size: 44px">123456789
+123456789
+123456789
+123456789
+1234567890</td></tr>
+</table>
+<p>123456789
+123456789
+123456789
+123456789
+123456789</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-cell-2.html
@@ -0,0 +1,30 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<table><tr><td>123456789
+123456789
+123456789
+123456789
+123456789</td></tr>
+<!-- FIXME: Why is it a little off when this width is on the first cell? -->
+<tr><td style="width: 600px">123456789
+123456789
+123456789
+123456789
+1234567890</td></tr>
+</table>
+<p>123456789
+123456789
+123456789
+123456789
+123456789</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-cell-3-ref.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<table><tr><td style="width: 600px">123456789
+123456789
+123456789
+123456789
+123456789</td></tr>
+<tr><td>123456789
+123456789
+123456789
+123456789
+123456789</td></tr>
+</table>
+<p style="font-size: 44px">123456789
+123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-cell-3.html
@@ -0,0 +1,29 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<table><tr><td style="width: 600px">123456789
+123456789
+123456789
+123456789
+123456789</td></tr>
+<tr><td>123456789
+123456789
+123456789
+123456789
+123456789</td></tr>
+</table>
+<p>123456789
+123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-float-1-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p style="float:right; width: 600px; font-size: 44px">123456789
+123456789
+123456789
+123456789
+1234567890</p>
+<p>123456789
+123456789
+123456789
+123456789
+123456789</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-float-1.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p style="float:right; width: 600px">123456789
+123456789
+123456789
+123456789
+1234567890</p>
+<p>123456789
+123456789
+123456789
+123456789
+123456789</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-float-2-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p style="float:right; width: 600px">123456789
+123456789
+123456789
+123456789
+123456789</p>
+<p style="font-size: 44px">123456789
+123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-float-2.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p style="float:right; width: 600px">123456789
+123456789
+123456789
+123456789
+123456789</p>
+<p>123456789
+123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-float-overflow-1-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p style="float:right; overflow: hidden; width: 600px; font-size: 44px">123456789
+123456789
+123456789
+123456789
+1234567890</p>
+<p>123456789
+123456789
+123456789
+123456789
+123456789</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-float-overflow-1.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p style="float:right; overflow: hidden; width: 600px">123456789
+123456789
+123456789
+123456789
+1234567890</p>
+<p>123456789
+123456789
+123456789
+123456789
+123456789</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-float-overflow-2-ref.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p style="float:right; overflow: hidden; width: 600px">123456789
+123456789
+123456789
+123456789
+123456789</p>
+<p style="font-size: 44px">123456789
+123456789
+123456789
+123456789
+1234567890</p>
new file mode 100644
--- /dev/null
+++ b/layout/reftests/font-inflation/threshold-scope-float-overflow-2.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML>
+<title>font.size.inflation.lineThreshold test: scope of accumulation</title>
+<style>
+body { font-size: 12px; width: 600px; }
+p { margin: 0 }
+</style>
+<!--
+In a 600px container, the minimum font size at 15em per line is 40px.
+This means we map 0px-60px into 40px-60px, so 12px gets mapped to 44px.
+
+Further, with a lineThreshold of 100, we need 50 characters of 12px
+text to meet the line threshold.
+-->
+<p style="float:right; overflow: hidden; width: 600px">123456789
+123456789
+123456789
+123456789
+123456789</p>
+<p>123456789
+123456789
+123456789
+123456789
+1234567890</p>