[css-lists] Import tests for list-style-type: <string>
authorobrufau@igalia.com <obrufau@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 4 Nov 2019 12:12:14 +0000 (12:12 +0000)
committerobrufau@igalia.com <obrufau@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 4 Nov 2019 12:12:14 +0000 (12:12 +0000)
https://bugs.webkit.org/show_bug.cgi?id=203759

Reviewed by Manuel Rego Casasnovas.

LayoutTests/imported/w3c:

Import WPT tests.

* resources/import-expectations.json:
* web-platform-tests/css/css-lists/list-style-type-string-001a-expected.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-001a.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-001b-expected.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-001b.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-002-expected.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-002.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-003-expected.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-003.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-004-expected.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-004.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-005a-expected.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-005a.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-005b-expected.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-005b.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-006-expected.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-006.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-007-expected.html: Added.
* web-platform-tests/css/css-lists/list-style-type-string-007.html: Added.
* web-platform-tests/css/css-lists/w3c-import.log:

LayoutTests:

Most tests fail because the feature hasn't been implemented yet
(https://bugs.webkit.org/show_bug.cgi?id=167729).

* TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@251984 268f45cc-cd09-0410-ab3c-d52691b4dbfc

23 files changed:
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/resources/import-expectations.json
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001a-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001a.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001b-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001b.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-003-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-004-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-004.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005a-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005a.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005b-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005b.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-006-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-006.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-007-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-007.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-lists/w3c-import.log

index d72d335..c905472 100644 (file)
@@ -1,3 +1,15 @@
+2019-11-04  Oriol Brufau  <obrufau@igalia.com>
+
+        [css-lists] Import tests for list-style-type: <string>
+        https://bugs.webkit.org/show_bug.cgi?id=203759
+
+        Reviewed by Manuel Rego Casasnovas.
+
+        Most tests fail because the feature hasn't been implemented yet
+        (https://bugs.webkit.org/show_bug.cgi?id=167729).
+
+        * TestExpectations:
+
 2019-11-04  youenn fablet  <youenn@apple.com>
 
         Add a test verifying video plays well when switching from MediaStreams to regular videos
 2019-11-04  youenn fablet  <youenn@apple.com>
 
         Add a test verifying video plays well when switching from MediaStreams to regular videos
index f53f0f0..cf67475 100644 (file)
@@ -3584,6 +3584,14 @@ imported/w3c/web-platform-tests/css/css-lists/content-property/marker-text-match
 imported/w3c/web-platform-tests/css/css-lists/counter-increment-inside-display-contents.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-lists/counter-reset-inside-display-contents.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-lists/counter-increment-inside-display-contents.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-lists/counter-reset-inside-display-contents.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html [ ImageOnlyFailure ]
+webkit.org/b/167729 imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001a.html [ ImageOnlyFailure ]
+webkit.org/b/167729 imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001b.html [ ImageOnlyFailure ]
+webkit.org/b/167729 imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-002.html [ ImageOnlyFailure ]
+webkit.org/b/167729 imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-003.html [ ImageOnlyFailure ]
+webkit.org/b/167729 imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005a.html [ ImageOnlyFailure ]
+webkit.org/b/167729 imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005b.html [ ImageOnlyFailure ]
+webkit.org/b/167729 imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-006.html [ ImageOnlyFailure ]
+webkit.org/b/167729 imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-007.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-lists/list-with-image-display-changed-001.html [ ImageOnlyFailure ]
 
 [ Debug ] fast/css/first-letter-and-float-crash.html [ Skip ]
 imported/w3c/web-platform-tests/css/css-lists/list-with-image-display-changed-001.html [ ImageOnlyFailure ]
 
 [ Debug ] fast/css/first-letter-and-float-crash.html [ Skip ]
index f8d4a66..fe2bb8d 100644 (file)
@@ -1,3 +1,33 @@
+2019-11-04  Oriol Brufau  <obrufau@igalia.com>
+
+        [css-lists] Import tests for list-style-type: <string>
+        https://bugs.webkit.org/show_bug.cgi?id=203759
+
+        Reviewed by Manuel Rego Casasnovas.
+
+        Import WPT tests.
+
+        * resources/import-expectations.json:
+        * web-platform-tests/css/css-lists/list-style-type-string-001a-expected.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-001a.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-001b-expected.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-001b.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-002-expected.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-002.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-003-expected.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-003.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-004-expected.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-004.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-005a-expected.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-005a.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-005b-expected.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-005b.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-006-expected.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-006.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-007-expected.html: Added.
+        * web-platform-tests/css/css-lists/list-style-type-string-007.html: Added.
+        * web-platform-tests/css/css-lists/w3c-import.log:
+
 2019-11-02  Oriol Brufau  <obrufau@igalia.com>
 
         [css-grid] Fix line name positions after auto repeat with no line names
 2019-11-02  Oriol Brufau  <obrufau@igalia.com>
 
         [css-grid] Fix line name positions after auto repeat with no line names
index a210a77..038c3d6 100644 (file)
@@ -84,7 +84,7 @@
     "web-platform-tests/css/css-grid/layout-algorithm/": "import", 
     "web-platform-tests/css/css-grid/parsing/": "import", 
     "web-platform-tests/css/css-images": "import", 
     "web-platform-tests/css/css-grid/layout-algorithm/": "import", 
     "web-platform-tests/css/css-grid/parsing/": "import", 
     "web-platform-tests/css/css-images": "import", 
-    "web-platform-tests/css/css-lists/": "import", 
+    "web-platform-tests/css/css-lists": "import", 
     "web-platform-tests/css/css-logical": "import", 
     "web-platform-tests/css/css-multicol": "import", 
     "web-platform-tests/css/css-overflow": "import", 
     "web-platform-tests/css/css-logical": "import", 
     "web-platform-tests/css/css-multicol": "import", 
     "web-platform-tests/css/css-overflow": "import", 
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001a-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001a-expected.html
new file mode 100644 (file)
index 0000000..0d1b136
--- /dev/null
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Reference: String value of list-style-type</title>
+  <link rel="author" title="Xidorn Quan" href="mailto:quanxunzhen@gmail.com">
+  <style>
+    ol, ul { list-style: none; }
+    li::before {
+      content: "# ";
+      font-variant-numeric: tabular-nums;
+    }
+  </style>
+</head>
+<body>
+  <ol start="-1">
+    <li>item -1</li>
+    <li>item 0</li>
+    <li>item 1</li>
+    <li>item 2</li>
+  </ol>
+  <ul start="-1">
+    <li>item -1</li>
+    <li>item 0</li>
+    <li>item 1</li>
+    <li>item 2</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001a.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001a.html
new file mode 100644 (file)
index 0000000..f7ed6e3
--- /dev/null
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Test: String value of list-style-type</title>
+  <link rel="author" title="Xidorn Quan" href="mailto:quanxunzhen@gmail.com">
+  <link rel="help" href="https://drafts.csswg.org/css-lists-3/#valdef-list-style-type-string">
+  <link rel="match" href="list-style-type-string-001-ref.html">
+  <style>
+    ol, ul { list-style-type: "# "; list-style-position: inside; }
+  </style>
+</head>
+<body>
+  <ol start="-1">
+    <li>item -1</li>
+    <li>item 0</li>
+    <li>item 1</li>
+    <li>item 2</li>
+  </ol>
+  <ul start="-1">
+    <li>item -1</li>
+    <li>item 0</li>
+    <li>item 1</li>
+    <li>item 2</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001b-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001b-expected.html
new file mode 100644 (file)
index 0000000..0d1b136
--- /dev/null
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Reference: String value of list-style-type</title>
+  <link rel="author" title="Xidorn Quan" href="mailto:quanxunzhen@gmail.com">
+  <style>
+    ol, ul { list-style: none; }
+    li::before {
+      content: "# ";
+      font-variant-numeric: tabular-nums;
+    }
+  </style>
+</head>
+<body>
+  <ol start="-1">
+    <li>item -1</li>
+    <li>item 0</li>
+    <li>item 1</li>
+    <li>item 2</li>
+  </ol>
+  <ul start="-1">
+    <li>item -1</li>
+    <li>item 0</li>
+    <li>item 1</li>
+    <li>item 2</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001b.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001b.html
new file mode 100644 (file)
index 0000000..f02bf13
--- /dev/null
@@ -0,0 +1,27 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Test: String value of list-style</title>
+  <link rel="author" title="Xidorn Quan" href="mailto:quanxunzhen@gmail.com">
+  <link rel="help" href="https://drafts.csswg.org/css-lists-3/#valdef-list-style-type-string">
+  <link rel="match" href="list-style-type-string-001-ref.html">
+  <style>
+    ol, ul { list-style: inside "# "; }
+  </style>
+</head>
+<body>
+  <ol start="-1">
+    <li>item -1</li>
+    <li>item 0</li>
+    <li>item 1</li>
+    <li>item 2</li>
+  </ol>
+  <ul start="-1">
+    <li>item -1</li>
+    <li>item 0</li>
+    <li>item 1</li>
+    <li>item 2</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-002-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-002-expected.html
new file mode 100644 (file)
index 0000000..8694b5f
--- /dev/null
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Reference: String value of list-style-type with outside position</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <style>
+    .list { list-style: none }
+    .list > ::before {
+      content: "";
+      display: inline-block;
+      width: 0px;
+      direction: rtl;
+      white-space: pre;
+    }
+    .list > :nth-child(2)::before { content: "foo" }
+    .list > :nth-child(3)::before { content: "foobar"; }
+    .list > :nth-child(4)::before { content: "some very long text that is not going to fit and will overflow"; }
+  </style>
+</head>
+<body>
+  <ol class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ol>
+  <ul class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-002.html
new file mode 100644 (file)
index 0000000..6f00d8a
--- /dev/null
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>String value of list-style-type with outside position</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <link rel="help" href="https://drafts.csswg.org/css-lists-3/#valdef-list-style-type-string">
+  <link rel="match" href="list-style-type-string-002-ref.html">
+  <meta name="assert" content="This test checks that list-style-type can set the marker string when the marker is positioned outside.">
+  <style>
+    .list { list-style-type: "" }
+    .list > :nth-child(2) { list-style-type: "foo" }
+    .list > :nth-child(3) { list-style-type: "foobar"; }
+    .list > :nth-child(4) { list-style-type: "some very long text that is not going to fit and will overflow"; }
+  </style>
+</head>
+<body>
+  <ol class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ol>
+  <ul class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-003-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-003-expected.html
new file mode 100644 (file)
index 0000000..ea3601b
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Reference: String value of list-style-type with RTL direction</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <style>
+    .list {
+      list-style: none;
+      direction: rtl;
+    }
+    .list > ::before {
+      content: "";
+      display: inline-block;
+      width: 0px;
+      direction: ltr;
+      white-space: pre;
+    }
+    .list > :nth-child(2)::before { content: "foo" }
+    .list > :nth-child(3)::before { content: "foobar"; }
+    .list > :nth-child(4)::before { content: "some very long text that is not going to fit and will overflow"; }
+  </style>
+</head>
+<body>
+  <ol class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ol>
+  <ul class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-003.html
new file mode 100644 (file)
index 0000000..94467ca
--- /dev/null
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>String value of list-style-type with RTL direction</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <link rel="help" href="https://drafts.csswg.org/css-lists-3/#valdef-list-style-type-string">
+  <link rel="match" href="list-style-type-string-003-ref.html">
+  <meta name="assert" content="This test checks that list-style-type can set the marker string when the direction is RTL.">
+  <style>
+    .list {
+      list-style-type: "";
+      direction: rtl;
+    }
+    .list > :nth-child(2) { list-style-type: "foo" }
+    .list > :nth-child(3) { list-style-type: "foobar"; }
+    .list > :nth-child(4) { list-style-type: "some very long text that is not going to fit and will overflow"; }
+  </style>
+</head>
+<body>
+  <ol class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ol>
+  <ul class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-004-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-004-expected.html
new file mode 100644 (file)
index 0000000..3a828b2
--- /dev/null
@@ -0,0 +1,25 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Test: String value of list-style-type changing dynamically</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <style>
+    .list { list-style-type: "bar" }
+  </style>
+</head>
+<body>
+  <ol class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ol>
+  <ul class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-004.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-004.html
new file mode 100644 (file)
index 0000000..922a4ec
--- /dev/null
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<html lang="en" class="reftest-wait">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Test: String value of list-style-type changing dynamically</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <link rel="help" href="https://drafts.csswg.org/css-lists-3/#valdef-list-style-type-string">
+  <link rel="match" href="list-style-type-string-004-ref.html">
+  <meta name="assert" content="This test checks that the marker text is updated when list-style-type changes.">
+  <style>
+    .list { list-style-type: "foo" }
+  </style>
+</head>
+<body>
+  <ol class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ol>
+  <ul class="list">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+  </ul>
+  <script src="/common/reftest-wait.js"></script>
+  <script>
+    "use strict";
+    addEventListener("load", function() {
+      requestAnimationFrame(() => {
+        for (const list of document.querySelectorAll(".list")) {
+          list.style.listStyleType = '"bar"';
+        }
+        takeScreenshot();
+      });
+    }, {once: true});
+  </script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005a-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005a-expected.html
new file mode 100644 (file)
index 0000000..703ceff
--- /dev/null
@@ -0,0 +1,66 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Reference: String value of list-style-type with bidi text</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <style>
+    .list {
+      width: 50%;
+      box-sizing: border-box;
+      float: left;
+      padding-inline-start: 14ch;
+      margin: 0;
+      line-height: 1.6;
+      list-style: none;
+    }
+    .rtl { direction: rtl }
+    .list > ::before {
+      unicode-bidi: isolate;
+      display: inline-flex;
+      flex-direction: row-reverse;
+      width: 0px;
+      white-space: pre;
+    }
+    .list > :nth-child(1)::before { content: "\627 \644 " }
+    .list > :nth-child(2)::before { content: "\61 \627 \644 " }
+    .list > :nth-child(3)::before { content: "\627 \644 \62 " }
+    .list > :nth-child(4)::before { content: "\61 \627 \644 \62 " }
+    .list > :nth-child(5)::before { content: "\61 \62 \627 \644 " }
+    .list > :nth-child(6)::before { content: "\627 \644 \61 \62 " }
+    .list > :nth-child(7)::before { content: "\31 \627 \644 " }
+    .list > :nth-child(8)::before { content: "\627 \644 \32 " }
+    .list > :nth-child(9)::before { content: "\31 \627 \644 \32 " }
+    .list > :nth-child(10)::before { content: "\31 \32 \627 \644 " }
+    .list > :nth-child(11)::before { content: "\627 \644 \31 \32 " }
+  </style>
+</head>
+<body>
+  <ol class="list ltr">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ol>
+  <ul class="list rtl">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005a.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005a.html
new file mode 100644 (file)
index 0000000..725cdee
--- /dev/null
@@ -0,0 +1,61 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>String value of list-style-type with bidi text</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <link rel="help" href="https://drafts.csswg.org/css-lists-3/#valdef-list-style-type-string">
+  <link rel="match" href="list-style-type-string-005-ref.html">
+  <meta name="assert" content="This test checks that the bidi algorithm runs for markers.">
+  <style>
+    .list {
+      width: 50%;
+      box-sizing: border-box;
+      float: left;
+      padding-inline-start: 14ch;
+      margin: 0;
+      line-height: 1.6;
+    }
+    .rtl { direction: rtl }
+    .list > :nth-child(1) { list-style-type: "\627 \644 " }
+    .list > :nth-child(2) { list-style-type: "\61 \627 \644 " }
+    .list > :nth-child(3) { list-style-type: "\627 \644 \62 " }
+    .list > :nth-child(4) { list-style-type: "\61 \627 \644 \62 " }
+    .list > :nth-child(5) { list-style-type: "\61 \62 \627 \644 " }
+    .list > :nth-child(6) { list-style-type: "\627 \644 \61 \62 " }
+    .list > :nth-child(7) { list-style-type: "\31 \627 \644 " }
+    .list > :nth-child(8) { list-style-type: "\627 \644 \32 " }
+    .list > :nth-child(9) { list-style-type: "\31 \627 \644 \32 " }
+    .list > :nth-child(10) { list-style-type: "\31 \32 \627 \644 " }
+    .list > :nth-child(11) { list-style-type: "\627 \644 \31 \32 " }
+  </style>
+</head>
+<body>
+  <ol class="list ltr">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ol>
+  <ul class="list rtl">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005b-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005b-expected.html
new file mode 100644 (file)
index 0000000..703ceff
--- /dev/null
@@ -0,0 +1,66 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Reference: String value of list-style-type with bidi text</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <style>
+    .list {
+      width: 50%;
+      box-sizing: border-box;
+      float: left;
+      padding-inline-start: 14ch;
+      margin: 0;
+      line-height: 1.6;
+      list-style: none;
+    }
+    .rtl { direction: rtl }
+    .list > ::before {
+      unicode-bidi: isolate;
+      display: inline-flex;
+      flex-direction: row-reverse;
+      width: 0px;
+      white-space: pre;
+    }
+    .list > :nth-child(1)::before { content: "\627 \644 " }
+    .list > :nth-child(2)::before { content: "\61 \627 \644 " }
+    .list > :nth-child(3)::before { content: "\627 \644 \62 " }
+    .list > :nth-child(4)::before { content: "\61 \627 \644 \62 " }
+    .list > :nth-child(5)::before { content: "\61 \62 \627 \644 " }
+    .list > :nth-child(6)::before { content: "\627 \644 \61 \62 " }
+    .list > :nth-child(7)::before { content: "\31 \627 \644 " }
+    .list > :nth-child(8)::before { content: "\627 \644 \32 " }
+    .list > :nth-child(9)::before { content: "\31 \627 \644 \32 " }
+    .list > :nth-child(10)::before { content: "\31 \32 \627 \644 " }
+    .list > :nth-child(11)::before { content: "\627 \644 \31 \32 " }
+  </style>
+</head>
+<body>
+  <ol class="list ltr">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ol>
+  <ul class="list rtl">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005b.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005b.html
new file mode 100644 (file)
index 0000000..ca984b6
--- /dev/null
@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>String value of list-style-type with bidi text in multicol</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <link rel="help" href="https://drafts.csswg.org/css-lists-3/#valdef-list-style-type-string">
+  <link rel="match" href="list-style-type-string-005-ref.html">
+  <meta name="assert" content="This test checks that the bidi algorithm runs for markers in multicol.">
+  <style>
+    body { column-count: 2 }
+    .list {
+      padding-inline-start: 14ch;
+      margin: 0;
+      line-height: 1.6;
+    }
+    .rtl { direction: rtl }
+    .list > :nth-child(1) { list-style-type: "\627 \644 " }
+    .list > :nth-child(2) { list-style-type: "\61 \627 \644 " }
+    .list > :nth-child(3) { list-style-type: "\627 \644 \62 " }
+    .list > :nth-child(4) { list-style-type: "\61 \627 \644 \62 " }
+    .list > :nth-child(5) { list-style-type: "\61 \62 \627 \644 " }
+    .list > :nth-child(6) { list-style-type: "\627 \644 \61 \62 " }
+    .list > :nth-child(7) { list-style-type: "\31 \627 \644 " }
+    .list > :nth-child(8) { list-style-type: "\627 \644 \32 " }
+    .list > :nth-child(9) { list-style-type: "\31 \627 \644 \32 " }
+    .list > :nth-child(10) { list-style-type: "\31 \32 \627 \644 " }
+    .list > :nth-child(11) { list-style-type: "\627 \644 \31 \32 " }
+  </style>
+</head>
+<body>
+  <ol class="list ltr">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ol>
+  <ul class="list rtl">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-006-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-006-expected.html
new file mode 100644 (file)
index 0000000..5c0a513
--- /dev/null
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Reference: String value of list-style-type with bidi text inside</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <style>
+    .list {
+      width: 50%;
+      box-sizing: border-box;
+      float: left;
+      padding-inline-start: 14ch;
+      margin: 0;
+      line-height: 1.6;
+      list-style: none;
+    }
+    .rtl { direction: rtl }
+    .list > ::before { unicode-bidi: isolate }
+    .list > :nth-child(1)::before { content: "\627 \644 " }
+    .list > :nth-child(2)::before { content: "\61 \627 \644 " }
+    .list > :nth-child(3)::before { content: "\627 \644 \62 " }
+    .list > :nth-child(4)::before { content: "\61 \627 \644 \62 " }
+    .list > :nth-child(5)::before { content: "\61 \62 \627 \644 " }
+    .list > :nth-child(6)::before { content: "\627 \644 \61 \62 " }
+    .list > :nth-child(7)::before { content: "\31 \627 \644 " }
+    .list > :nth-child(8)::before { content: "\627 \644 \32 " }
+    .list > :nth-child(9)::before { content: "\31 \627 \644 \32 " }
+    .list > :nth-child(10)::before { content: "\31 \32 \627 \644 " }
+    .list > :nth-child(11)::before { content: "\627 \644 \31 \32 " }
+  </style>
+</head>
+<body>
+  <ol class="list ltr">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ol>
+  <ul class="list rtl">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-006.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-006.html
new file mode 100644 (file)
index 0000000..7f6904b
--- /dev/null
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>String value of list-style-type with bidi text inside</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <link rel="help" href="https://drafts.csswg.org/css-lists-3/#valdef-list-style-type-string">
+  <link rel="match" href="list-style-type-string-006-ref.html">
+  <meta name="assert" content="This test checks that the bidi algorithm runs for markers with unicode-bidi:isolate, so that the text inside the marker is isolated from the text outside. This is only relevant when the marker is positioned inside.">
+  <style>
+    .list {
+      list-style-position: inside;
+      width: 50%;
+      box-sizing: border-box;
+      float: left;
+      padding-inline-start: 14ch;
+      margin: 0;
+      line-height: 1.6;
+    }
+    .rtl { direction: rtl }
+    .list > :nth-child(1) { list-style-type: "\627 \644 " }
+    .list > :nth-child(2) { list-style-type: "\61 \627 \644 " }
+    .list > :nth-child(3) { list-style-type: "\627 \644 \62 " }
+    .list > :nth-child(4) { list-style-type: "\61 \627 \644 \62 " }
+    .list > :nth-child(5) { list-style-type: "\61 \62 \627 \644 " }
+    .list > :nth-child(6) { list-style-type: "\627 \644 \61 \62 " }
+    .list > :nth-child(7) { list-style-type: "\31 \627 \644 " }
+    .list > :nth-child(8) { list-style-type: "\627 \644 \32 " }
+    .list > :nth-child(9) { list-style-type: "\31 \627 \644 \32 " }
+    .list > :nth-child(10) { list-style-type: "\31 \32 \627 \644 " }
+    .list > :nth-child(11) { list-style-type: "\627 \644 \31 \32 " }
+  </style>
+</head>
+<body>
+  <ol class="list ltr">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ol>
+  <ul class="list rtl">
+    <li>item 1</li>
+    <li>item 2</li>
+    <li>item 3</li>
+    <li>item 4</li>
+    <li>item 5</li>
+    <li>item 6</li>
+    <li>item 7</li>
+    <li>item 8</li>
+    <li>item 9</li>
+    <li>item 10</li>
+    <li>item 11</li>
+  </ul>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-007-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-007-expected.html
new file mode 100644 (file)
index 0000000..8c523a9
--- /dev/null
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>CSS Reference: String value of list-style-type with Ahem font</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+  <style>
+    main {
+      width: 300px;
+      overflow: auto;
+      padding: 10px 0;
+    }
+    pre {
+      font: 10px/1 Ahem;
+      margin: 0;
+      width: 100%;
+      padding-right: 70px;
+    }
+  </style>
+</head>
+<body>
+  <main>
+    <pre>          É1      1É          </pre>
+    <pre>       XXXÉ2      2ÉXXX       </pre>
+    <pre>    XXXpppÉ3      3ÉXXXppp    </pre>
+    <pre>  XXX ppp É4      4É XXX ppp  </pre>
+    <pre> XXX   pppÉ5      5ÉXXX   ppp </pre>
+    <pre>XX Xp pp  É6      6É  XX Xp pp</pre>
+    <pre>X X Xp p pÉ7      7ÉX X Xp p p</pre>
+    <pre>XX XXXpXXXÉ8      8ÉXXXXpXX XX</pre>
+    <pre>X XXXpXXX É9      9É XXXXpXX X</pre>
+  </main>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-007.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-007.html
new file mode 100644 (file)
index 0000000..55c883f
--- /dev/null
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <meta charset="UTF-8">
+  <title>String value of list-style-type with Ahem font</title>
+  <link rel="author" title="Oriol Brufau" href="mailto:obrufau@gmail.com">
+  <link rel="help" href="https://drafts.csswg.org/css-lists-3/#valdef-list-style-type-string">
+  <link rel="match" href="list-style-type-string-007-ref.html">
+  <meta name="assert" content="This test checks that list-style-type can set the marker string with the Ahem font.">
+  <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+  <style>
+    main {
+      width: 300px;
+      overflow: auto;
+      padding: 10px 0;
+    }
+    .list {
+      font: 10px/1 Ahem;
+      padding-inline-start: 100px;
+      margin: 0;
+      width: 50px;
+      float: left;
+    }
+    .rtl { direction: rtl; }
+    .list > :nth-child(1) { list-style-type: ""; }
+    .list > :nth-child(2) { list-style-type: "XXX"; }
+    .list > :nth-child(3) { list-style-type: "XXXppp"; }
+    .list > :nth-child(4) { list-style-type: " XXX ppp "; }
+    .list > :nth-child(5) { list-style-type: "XXX   ppp"; }
+    .list > :nth-child(6) { list-style-type: "  XX Xp pp  "; }
+    .list > :nth-child(7) { list-style-type: "X X Xp p p"; }
+    .list > :nth-child(8) { list-style-type: "XXXXpXX XXXpXXX"; }
+    .list > :nth-child(9) { list-style-type: " XXXXpXX XXXpXXX "; }
+  </style>
+</head>
+<body>
+  <main>
+    <ol class="list">
+      <li>É1</li>
+      <li>É2</li>
+      <li>É3</li>
+      <li>É4</li>
+      <li>É5</li>
+      <li>É6</li>
+      <li>É7</li>
+      <li>É8</li>
+      <li>É9</li>
+    </ol>
+    <ul class="list rtl">
+      <li>1É</li>
+      <li>2É</li>
+      <li>3É</li>
+      <li>4É</li>
+      <li>5É</li>
+      <li>6É</li>
+      <li>7É</li>
+      <li>8É</li>
+      <li>9É</li>
+    </ul>
+  </main>
+</body>
+</html>
index 269a081..9eccf09 100644 (file)
@@ -43,5 +43,23 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-armenian-002.xht
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-armenian-003.xht
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-marker-with-lineheight-and-overflow-hidden-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-armenian-002.xht
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-armenian-003.xht
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001a-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001a.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001b-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-001b.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-002-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-002.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-003-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-003.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-004-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-004.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005a-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005a.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005b-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-005b.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-006-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-006.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-007-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-style-type-string-007.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-with-image-display-changed-001-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-with-image-display-changed-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-with-image-display-changed-001-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-lists/list-with-image-display-changed-001.html