Skip to content

Commit 41c8409

Browse files
kbhomesemilio
authored andcommitted
Bug 1740584 - Wait for font loading in WPT rcap, rch, rex, ric, rlh invalidation tests. r=emilio
Modeled after changes in https://bugzilla.mozilla.org/show_bug.cgi?id=1966668 for proper testing of the Ahem font. I validated using `./mach wpt-serve` and Chromium that they still pass. Differential Revision: https://phabricator.services.mozilla.com/D274526
1 parent a451f9c commit 41c8409

File tree

5 files changed

+39
-29
lines changed

5 files changed

+39
-29
lines changed

testing/web-platform/tests/css/css-values/rcap-invalidation.html

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,11 @@
2929

3030
<script>
3131
setup({ single_test: true });
32-
let old_width = div.getBoundingClientRect().width;
33-
document.documentElement.style.fontFamily = "sans-serif";
34-
let new_width = div.getBoundingClientRect().width;
35-
assert_not_equals(old_width, new_width, "expect the capital height of Ahem and sans-serif to be different");
36-
done();
32+
document.fonts.ready.then(() => {
33+
let old_width = div.getBoundingClientRect().width;
34+
document.documentElement.style.fontFamily = "sans-serif";
35+
let new_width = div.getBoundingClientRect().width;
36+
assert_not_equals(old_width, new_width, "expect the capital height of Ahem and sans-serif to be different");
37+
done();
38+
});
3739
</script>

testing/web-platform/tests/css/css-values/rch-invalidation.html

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,11 @@
2828

2929
<script>
3030
setup({ single_test: true });
31-
let old_width = div.getBoundingClientRect().width;
32-
document.documentElement.style.fontFamily = "sans-serif";
33-
let new_width = div.getBoundingClientRect().width;
34-
assert_not_equals(old_width, new_width, "expect the width of zero of Ahem and sans-serif to be different");
35-
done();
31+
document.fonts.ready.then(() => {
32+
let old_width = div.getBoundingClientRect().width;
33+
document.documentElement.style.fontFamily = "sans-serif";
34+
let new_width = div.getBoundingClientRect().width;
35+
assert_not_equals(old_width, new_width, "expect the width of zero of Ahem and sans-serif to be different");
36+
done();
37+
});
3638
</script>

testing/web-platform/tests/css/css-values/rex-invalidation.html

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,11 @@
2929

3030
<script>
3131
setup({ single_test: true });
32-
let old_width = div.getBoundingClientRect().width;
33-
document.documentElement.style.fontFamily = "sans-serif";
34-
let new_width = div.getBoundingClientRect().width;
35-
assert_not_equals(old_width, new_width, "expect the x-height of Ahem and sans-serif to be different");
36-
done();
32+
document.fonts.ready.then(() => {
33+
let old_width = div.getBoundingClientRect().width;
34+
document.documentElement.style.fontFamily = "sans-serif";
35+
let new_width = div.getBoundingClientRect().width;
36+
assert_not_equals(old_width, new_width, "expect the x-height of Ahem and sans-serif to be different");
37+
done();
38+
});
3739
</script>

testing/web-platform/tests/css/css-values/ric-invalidation.html

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,11 @@
2828

2929
<script>
3030
setup({ single_test: true });
31-
let old_width = div.getBoundingClientRect().width;
32-
document.documentElement.style.fontSize = "41px";
33-
let new_width = div.getBoundingClientRect().width;
34-
assert_not_equals(old_width, new_width, "expect update of ric units with font size change");
35-
done();
31+
document.fonts.ready.then(() => {
32+
let old_width = div.getBoundingClientRect().width;
33+
document.documentElement.style.fontSize = "41px";
34+
let new_width = div.getBoundingClientRect().width;
35+
assert_not_equals(old_width, new_width, "expect update of ric units with font size change");
36+
done();
37+
});
3638
</script>

testing/web-platform/tests/css/css-values/rlh-invalidation.html

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,15 @@
3030

3131
<script>
3232
setup({ single_test: true });
33-
let old_width = div.getBoundingClientRect().width;
34-
document.documentElement.style.lineHeight = "4";
35-
let new_width = div.getBoundingClientRect().width;
36-
assert_not_equals(old_width, new_width, "expect rlh units to update on line-height update");
37-
old_width = new_width;
38-
document.documentElement.style.fontSize = "41px";
39-
new_width = div.getBoundingClientRect().width;
40-
assert_not_equals(old_width, new_width, "expect rlh units to update on font-size update");
41-
done();
33+
document.fonts.ready.then(() => {
34+
let old_width = div.getBoundingClientRect().width;
35+
document.documentElement.style.lineHeight = "4";
36+
let new_width = div.getBoundingClientRect().width;
37+
assert_not_equals(old_width, new_width, "expect rlh units to update on line-height update");
38+
old_width = new_width;
39+
document.documentElement.style.fontSize = "41px";
40+
new_width = div.getBoundingClientRect().width;
41+
assert_not_equals(old_width, new_width, "expect rlh units to update on font-size update");
42+
done();
43+
});
4244
</script>

0 commit comments

Comments
 (0)