css-ruby: Fix incorrect tests in ruby-position.html
ruby-position property should work with 'ruby text container boxes'. So
ruby-position on <rt> should not work.
https://drafts.csswg.org/css-ruby-1/#rubypos
Bug: https://github.com/web-platform-tests/wpt/issues/23386
Change-Id: I3c3e7a762c8f88d5ffce1101692b06b6e496e49d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2186615
Commit-Queue: Koji Ishii <kojii@chromium.org>
Auto-Submit: Kent Tamura <tkent@chromium.org>
Reviewed-by: Koji Ishii <kojii@chromium.org>
Cr-Commit-Position: refs/heads/master@{#766290}
diff --git a/css/css-ruby/ruby-position.html b/css/css-ruby/ruby-position.html
index 981a405..014c524 100644
--- a/css/css-ruby/ruby-position.html
+++ b/css/css-ruby/ruby-position.html
@@ -5,10 +5,12 @@
<body>
<p><ruby id="o1" style="ruby-position: over">base<rt>annotation</rt></ruby></p>
-<p><ruby id="o2" style="ruby-position: under">base<rt style="ruby-position: over">annotation</rt></ruby></p>
+<p><ruby id="o2" style="ruby-position: over">base<rt style="ruby-position: under">annotation</rt></ruby></p>
+<p><ruby id="o3" style="ruby-position: under">base<rtc style="ruby-position: over"><rt style="ruby-position: under">annotation</rt></rtc></ruby></p>
<p><ruby id="u1" style="ruby-position: under">base<rt>annotation</rt></ruby></p>
-<p><ruby id="u2">base<rt style="ruby-position: under">annotation</rt></ruby></p>
+<p><ruby id="u2" style="ruby-position: under">base<rt style="ruby-position: over">annotation</rt></ruby></p>
+<p><ruby id="u3" style="ruby-position: over">base<rtc style="ruby-position: under"><rt style="ruby-position: over">annotation</rt></rtc></ruby></p>
<script>
test(() => {
@@ -19,7 +21,12 @@
test(() => {
const o2 = document.querySelector('#o2');
assert_true(o2.querySelector('rt').getBoundingClientRect().top <= o2.getBoundingClientRect().top);
-}, 'ruby-position:over on <rt> works');
+}, 'ruby-position:under on <rt> should not work');
+
+test(() => {
+ const o3 = document.querySelector('#o3');
+ assert_true(o3.querySelector('rt').getBoundingClientRect().top <= o3.getBoundingClientRect().top);
+}, 'ruby-position:over on <rtc> works');
test(() => {
const u1 = document.querySelector('#u1');
@@ -29,6 +36,12 @@
test(() => {
const u2 = document.querySelector('#u2');
assert_true(u2.querySelector('rt').getBoundingClientRect().bottom >= u2.getBoundingClientRect().bottom);
-}, 'ruby-position:under on <rt> works');
+}, 'ruby-position:over on <rt> should not work');
+
+test(() => {
+ const u3 = document.querySelector('#u3');
+ assert_true(u3.querySelector('rt').getBoundingClientRect().bottom >= u3.getBoundingClientRect().bottom);
+}, 'ruby-position:under on <rtc> works');
+
</script>
</body>