diff --git a/testing/web-platform/tests/html/rendering/bidi-rendering/slot-direction.window.js b/testing/web-platform/tests/html/rendering/bidi-rendering/slot-direction.window.js new file mode 100644 index 000000000000..a354cb71bf18 --- /dev/null +++ b/testing/web-platform/tests/html/rendering/bidi-rendering/slot-direction.window.js @@ -0,0 +1,439 @@ +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 +} +) +; +} diff --git a/testing/web-platform/tests/html/rendering/bidi-rendering/slot-no-isolate-001-ref.html b/testing/web-platform/tests/html/rendering/bidi-rendering/slot-no-isolate-001-ref.html new file mode 100644 index 000000000000..e84176a22cb8 --- /dev/null +++ b/testing/web-platform/tests/html/rendering/bidi-rendering/slot-no-isolate-001-ref.html @@ -0,0 +1,118 @@ +< +! +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 +; +" +> +& +# +x5D1 +; +- +& +# +x5D0 +; +< +/ +div +> +< +div +> +normal +< +/ +div +> diff --git a/testing/web-platform/tests/html/rendering/bidi-rendering/slot-no-isolate-001.html b/testing/web-platform/tests/html/rendering/bidi-rendering/slot-no-isolate-001.html new file mode 100644 index 000000000000..b1f196eee9b9 --- /dev/null +++ b/testing/web-platform/tests/html/rendering/bidi-rendering/slot-no-isolate-001.html @@ -0,0 +1,301 @@ +< +! +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 +> +& +# +x5D0 +; +- +< +span +id += +" +e +" +> +& +# +x5D1 +; +< +/ +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 +>