-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bug 1876401 [wpt PR 44178] - Add tests for direction and bidi isolati…
…on behavior of <slot> element., a=testonly Automatic update from web-platform-tests Add tests for direction and bidi isolation behavior of <slot> element. These tests are based on the tests previously in https://crrev.com/c/4800075 and https://crrev.com/c/4973701, but are revised to reflect that the HTML spec changes that those changes were implementing have been reverted in whatwg/html#9880 Bug: 576815 Change-Id: Id4536cb39691c2d234113f891f96d7100c7eeea4 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5233352 Reviewed-by: Di Zhang <dizhanggchromium.org> Auto-Submit: David Baron <dbaronchromium.org> Commit-Queue: Di Zhang <dizhanggchromium.org> Cr-Commit-Position: refs/heads/main{#1251783} -- wpt-commits: 41bbcfcc813d99401ca0cacfa392c87d6f18ffca wpt-pr: 44178 UltraBlame original commit: 6dc79c28daa8bf6d48215692303e1097aa118baa
- Loading branch information
Showing
3 changed files
with
102 additions
and
0 deletions.
There are no files selected for viewing
72 changes: 72 additions & 0 deletions
72
testing/web-platform/tests/html/rendering/bidi-rendering/slot-direction.window.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
|
||
|
||
|
||
|
||
for (let t of [ | ||
{ | ||
description: "<slot> inherits direction from parent", | ||
shadow_tree: ` | ||
<div dir=ltr data-expected="ltr"> | ||
<slot data-expected="ltr"></slot> | ||
</div> | ||
`, | ||
host_dir: "rtl", | ||
}, | ||
{ | ||
description: "<slot> inherits CSS direction from parent", | ||
shadow_tree: ` | ||
<div style="direction: ltr" data-expected="ltr"> | ||
<slot data-expected="ltr"></slot> | ||
</div> | ||
`, | ||
host_dir: "rtl", | ||
}, | ||
{ | ||
description: "<slot dir=ltr>", | ||
shadow_tree: ` | ||
<slot dir="ltr" data-expected="ltr"></slot> | ||
`, | ||
host_dir: "rtl", | ||
}, | ||
{ | ||
description: "<slot dir=rtl>", | ||
shadow_tree: ` | ||
<slot dir="rtl" data-expected="rtl"></slot> | ||
`, | ||
host_dir: "ltr", | ||
}, | ||
{ | ||
description: "<slot dir=auto> resolving to LTR", | ||
shadow_tree: ` | ||
<slot dir="ltr" data-expected="ltr"></slot> | ||
`, | ||
host_dir: "rtl", | ||
host_contents: "A", | ||
}, | ||
{ | ||
description: "<slot dir=auto> resolving to RTL", | ||
shadow_tree: ` | ||
<slot dir="rtl" data-expected="rtl"></slot> | ||
`, | ||
host_dir: "ltr", | ||
host_contents: "\u0627", | ||
}, | ||
]) { | ||
test(() => { | ||
let host = document.createElement("div"); | ||
document.body.appendChild(host); | ||
host.dir = t.host_dir; | ||
if ("host_contents" in t) { | ||
host.innerHTML = t.host_contents; | ||
} | ||
|
||
let root = host.attachShadow({mode: "open"}); | ||
root.innerHTML = t.shadow_tree; | ||
|
||
for (let e of Array.from(root.querySelectorAll("[data-expected]"))) { | ||
assert_equals(getComputedStyle(e).direction, e.getAttribute("data-expected"), `direction of ${e.nodeName}`); | ||
} | ||
|
||
host.remove(); | ||
}, `<slot> element sets CSS direction property: ${t.description}`); | ||
} |
8 changes: 8 additions & 0 deletions
8
testing/web-platform/tests/html/rendering/bidi-rendering/slot-no-isolate-001-ref.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
<!DOCTYPE html> | ||
<title>HTML Rendering: slot element has unicode-bidi: isolate</title> | ||
<link rel="author" title="L. David Baron" href="https://dbaron.org/"> | ||
<link rel="author" title="Google" href="http://www.google.com/"> | ||
|
||
<div style="unicode-bidi: bidi-override; direction: ltr;">ב-א</div> | ||
|
||
<div>normal</div> |
22 changes: 22 additions & 0 deletions
22
testing/web-platform/tests/html/rendering/bidi-rendering/slot-no-isolate-001.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
<!DOCTYPE html> | ||
<title>HTML Rendering: slot element has unicode-bidi: isolate</title> | ||
<link rel="author" title="L. David Baron" href="https://dbaron.org/"> | ||
<link rel="author" title="Google" href="http://www.google.com/"> | ||
<link rel="help" href="https://html.spec.whatwg.org/multipage/rendering.html#bidi-rendering"> | ||
<link rel="help" href="https://github.com/whatwg/html/pull/9880"> | ||
<link rel="match" href="slot-no-isolate-001-ref.html"> | ||
|
||
<div>א-<span id="e">ב</span></div> | ||
|
||
<div id="v"></div> | ||
|
||
<script> | ||
|
||
let e = document.getElementById("e"); | ||
let root = e.attachShadow({mode: "open"}); | ||
// use display:inline to override default display:contents | ||
root.innerHTML = "<slot style='display:inline'>\u05D2</slot>"; | ||
let val = getComputedStyle(root.querySelector("slot")).unicodeBidi; | ||
document.getElementById("v").innerText = val; | ||
|
||
</script> |