Add another test for locale-specific shaping
https://bugs.webkit.org/show_bug.cgi?id=235558
Reviewed by Darin Adler.
Thanks so much to Just van Rossum for contributing the test font!!!
.:
* metadata/contributors.json:
LayoutTests:
This test makes sure the LOCL lookup works correctly, even without font-feature-settings.
* fast/text/locale-shaping-2-expected.html: Added.
* fast/text/locale-shaping-2.html: Added.
* fast/text/locale-shaping-3-expected.html: Added.
* fast/text/locale-shaping-3.html: Added.
* fast/text/resources/langlocatest_cjk/LICENSE: Added.
* fast/text/resources/langlocatest_cjk/langlocatest_cjk.ttf: Added.
* platform/gtk/TestExpectations:
* platform/ios/TestExpectations:
* platform/mac/TestExpectations:
* platform/win/TestExpectations:
* platform/wpe/TestExpectations:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@288585 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/ChangeLog b/ChangeLog
index 1e3e09b..8d333f4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2022-01-25 Myles C. Maxfield <mmaxfield@apple.com>
+
+ Add another test for locale-specific shaping
+ https://bugs.webkit.org/show_bug.cgi?id=235558
+
+ Reviewed by Darin Adler.
+
+ Thanks so much to Just van Rossum for contributing the test font!!!
+
+ * metadata/contributors.json:
+
2022-01-20 Elliott Williams <emw@apple.com>
[XCBuild] Build via the workspace with USE_WORKSPACE=YES
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 2ec6090..786eed7 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,26 @@
+2022-01-25 Myles C. Maxfield <mmaxfield@apple.com>
+
+ Add another test for locale-specific shaping
+ https://bugs.webkit.org/show_bug.cgi?id=235558
+
+ Reviewed by Darin Adler.
+
+ Thanks so much to Just van Rossum for contributing the test font!!!
+
+ This test makes sure the LOCL lookup works correctly, even without font-feature-settings.
+
+ * fast/text/locale-shaping-2-expected.html: Added.
+ * fast/text/locale-shaping-2.html: Added.
+ * fast/text/locale-shaping-3-expected.html: Added.
+ * fast/text/locale-shaping-3.html: Added.
+ * fast/text/resources/langlocatest_cjk/LICENSE: Added.
+ * fast/text/resources/langlocatest_cjk/langlocatest_cjk.ttf: Added.
+ * platform/gtk/TestExpectations:
+ * platform/ios/TestExpectations:
+ * platform/mac/TestExpectations:
+ * platform/win/TestExpectations:
+ * platform/wpe/TestExpectations:
+
2022-01-25 Ryan Haddad <ryanhaddad@apple.com>
[macOS arm64] fast/scrolling/mac/j-shaped-scroll-rubberband.html is consistently failing
diff --git a/LayoutTests/fast/text/locale-shaping-2-expected.html b/LayoutTests/fast/text/locale-shaping-2-expected.html
new file mode 100644
index 0000000..c5673af
--- /dev/null
+++ b/LayoutTests/fast/text/locale-shaping-2-expected.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<style>
+@font-face {
+ font-family: "CJKLoclTest";
+ src: url("resources/langlocatest_cjk/langlocatest_cjk.ttf") format('truetype');
+}
+
+.locl-test {
+ display: inline-block;
+ font-family: "CJKLoclTest";
+ font-size: 3rem;
+}
+
+.locl-on {
+ font-family: "CJKLoclTest";
+ font-feature-settings: "locl" 1;
+}
+
+.locl-off {
+ font-family: "CJKLoclTest";
+ font-feature-settings: "locl" 0;
+}
+</style>
+</head>
+<body>
+<div>This test makes sure that shaping is locale-specific. The test passes if the big text below doesn't all say ZHS.</div>
+<div class="locl-test">
+<div lang="zh-Hans">雕</div>
+<div lang="zh-Hant">雕</div>
+<div lang="zh-HK">雕</div>
+<div lang="ja-JP">雕</div>
+<div lang="ko-KR">雕</div>
+</div>
+</body>
+</html>
diff --git a/LayoutTests/fast/text/locale-shaping-2.html b/LayoutTests/fast/text/locale-shaping-2.html
new file mode 100644
index 0000000..9f1e120
--- /dev/null
+++ b/LayoutTests/fast/text/locale-shaping-2.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<style>
+@font-face {
+ font-family: "CJKLoclTest";
+ src: url("resources/langlocatest_cjk/langlocatest_cjk.ttf") format('truetype');
+}
+
+.locl-test {
+ display: inline-block;
+ font-family: "CJKLoclTest";
+ font-size: 3rem;
+}
+
+.locl-on {
+ font-family: "CJKLoclTest";
+ font-feature-settings: "locl" 1;
+}
+
+.locl-off {
+ font-family: "CJKLoclTest";
+ font-feature-settings: "locl" 0;
+}
+</style>
+</head>
+<body>
+<div>This test makes sure that shaping is locale-specific. The test passes if the big text below doesn't all say ZHS.</div>
+<div class="locl-test locl-on">
+<div lang="zh-Hans">雕</div>
+<div lang="zh-Hant">雕</div>
+<div lang="zh-HK">雕</div>
+<div lang="ja-JP">雕</div>
+<div lang="ko-KR">雕</div>
+</div>
+</body>
+</html>
diff --git a/LayoutTests/fast/text/locale-shaping-3-expected.html b/LayoutTests/fast/text/locale-shaping-3-expected.html
new file mode 100644
index 0000000..c5673af
--- /dev/null
+++ b/LayoutTests/fast/text/locale-shaping-3-expected.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<style>
+@font-face {
+ font-family: "CJKLoclTest";
+ src: url("resources/langlocatest_cjk/langlocatest_cjk.ttf") format('truetype');
+}
+
+.locl-test {
+ display: inline-block;
+ font-family: "CJKLoclTest";
+ font-size: 3rem;
+}
+
+.locl-on {
+ font-family: "CJKLoclTest";
+ font-feature-settings: "locl" 1;
+}
+
+.locl-off {
+ font-family: "CJKLoclTest";
+ font-feature-settings: "locl" 0;
+}
+</style>
+</head>
+<body>
+<div>This test makes sure that shaping is locale-specific. The test passes if the big text below doesn't all say ZHS.</div>
+<div class="locl-test">
+<div lang="zh-Hans">雕</div>
+<div lang="zh-Hant">雕</div>
+<div lang="zh-HK">雕</div>
+<div lang="ja-JP">雕</div>
+<div lang="ko-KR">雕</div>
+</div>
+</body>
+</html>
diff --git a/LayoutTests/fast/text/locale-shaping-3.html b/LayoutTests/fast/text/locale-shaping-3.html
new file mode 100644
index 0000000..6246574
--- /dev/null
+++ b/LayoutTests/fast/text/locale-shaping-3.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<style>
+@font-face {
+ font-family: "CJKLoclTest";
+ src: url("resources/langlocatest_cjk/langlocatest_cjk.ttf") format('truetype');
+}
+
+.locl-test {
+ display: inline-block;
+ font-family: "CJKLoclTest";
+ font-size: 3rem;
+}
+
+.locl-on {
+ font-family: "CJKLoclTest";
+ font-feature-settings: "locl" 1;
+}
+
+.locl-off {
+ font-family: "CJKLoclTest";
+ font-feature-settings: "locl" 0;
+}
+</style>
+</head>
+<body>
+<div>This test makes sure that shaping is locale-specific. The test passes if the big text below doesn't all say ZHS.</div>
+<div class="locl-test locl-off">
+<div lang="zh-Hans">雕</div>
+<div lang="zh-Hant">雕</div>
+<div lang="zh-HK">雕</div>
+<div lang="ja-JP">雕</div>
+<div lang="ko-KR">雕</div>
+</div>
+</body>
+</html>
diff --git a/LayoutTests/fast/text/resources/langlocatest_cjk/LICENSE b/LayoutTests/fast/text/resources/langlocatest_cjk/LICENSE
new file mode 100644
index 0000000..7db55b3
--- /dev/null
+++ b/LayoutTests/fast/text/resources/langlocatest_cjk/LICENSE
@@ -0,0 +1,3 @@
+Glyphs derived from IBM Plex, which are Copyright 2019 IBM Corp. All rights reserved. Licensed under the SIL Open Font License, Version 1.1.
+
+Very kindly provided by Just van Rossum <justvanrossum@gmail.com>.
diff --git a/LayoutTests/fast/text/resources/langlocatest_cjk/langlocatest_cjk.ttf b/LayoutTests/fast/text/resources/langlocatest_cjk/langlocatest_cjk.ttf
new file mode 100644
index 0000000..9a05cca
--- /dev/null
+++ b/LayoutTests/fast/text/resources/langlocatest_cjk/langlocatest_cjk.ttf
Binary files differ
diff --git a/LayoutTests/platform/gtk/TestExpectations b/LayoutTests/platform/gtk/TestExpectations
index c44b8a7..12f368c 100644
--- a/LayoutTests/platform/gtk/TestExpectations
+++ b/LayoutTests/platform/gtk/TestExpectations
@@ -2047,3 +2047,7 @@
#////////////////////////////////////////////////////////////////////////////////////////
# UNSORTED Expectations. When in doubt, put it here.
#////////////////////////////////////////////////////////////////////////////////////////
+
+# These tests require platform support.
+fast/text/locale-shaping-2.html [ ImageOnlyFailure ]
+fast/text/locale-shaping-3.html [ ImageOnlyFailure ]
diff --git a/LayoutTests/platform/ios/TestExpectations b/LayoutTests/platform/ios/TestExpectations
index 159fedc..c101fb7 100644
--- a/LayoutTests/platform/ios/TestExpectations
+++ b/LayoutTests/platform/ios/TestExpectations
@@ -3435,3 +3435,8 @@
imported/w3c/web-platform-tests/css/css-pseudo/selection-originating-decoration-color.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-pseudo/selection-originating-underline-order.html [ ImageOnlyFailure ]
imported/w3c/web-platform-tests/css/css-pseudo/target-text-007.html [ Failure ]
+
+# These tests require platform support.
+# <rdar://problem/87944426>
+fast/text/locale-shaping-2.html [ Pass ImageOnlyFailure ]
+fast/text/locale-shaping-3.html [ Pass ImageOnlyFailure ]
diff --git a/LayoutTests/platform/mac/TestExpectations b/LayoutTests/platform/mac/TestExpectations
index 04fe53c..7bc1b9b 100644
--- a/LayoutTests/platform/mac/TestExpectations
+++ b/LayoutTests/platform/mac/TestExpectations
@@ -2433,3 +2433,8 @@
# This test is specific to Core Text.
fast/text/font-lookup-dot-prefix-case-sensitive.html [ Pass ]
+
+# These tests require platform support.
+# <rdar://problem/87944426>
+[ Catalina BigSur Monterey ] fast/text/locale-shaping-2.html [ Pass ImageOnlyFailure ]
+[ Catalina BigSur Monterey ] fast/text/locale-shaping-3.html [ Pass ImageOnlyFailure ]
diff --git a/LayoutTests/platform/win/TestExpectations b/LayoutTests/platform/win/TestExpectations
index 64c2c8a..1399de8 100644
--- a/LayoutTests/platform/win/TestExpectations
+++ b/LayoutTests/platform/win/TestExpectations
@@ -4800,3 +4800,7 @@
# LinearSRGB color space is not supported on Windows.
css3/filters/reference-filter-color-space.html [ Skip ]
+
+# These tests require platform support.
+fast/text/locale-shaping-2.html [ ImageOnlyFailure ]
+fast/text/locale-shaping-3.html [ ImageOnlyFailure ]
diff --git a/LayoutTests/platform/wpe/TestExpectations b/LayoutTests/platform/wpe/TestExpectations
index d783c44..b489e21 100644
--- a/LayoutTests/platform/wpe/TestExpectations
+++ b/LayoutTests/platform/wpe/TestExpectations
@@ -1367,3 +1367,7 @@
#////////////////////////////////////////////////////////////////////////////////////////
# UNSORTED Expectations. When in doubt, put it here.
#////////////////////////////////////////////////////////////////////////////////////////
+
+# These tests require platform support.
+fast/text/locale-shaping-2.html [ ImageOnlyFailure ]
+fast/text/locale-shaping-3.html [ ImageOnlyFailure ]
diff --git a/metadata/contributors.json b/metadata/contributors.json
index a21e0e8..fbffbd7 100644
--- a/metadata/contributors.json
+++ b/metadata/contributors.json
@@ -3768,6 +3768,13 @@
},
{
"emails" : [
+ "justvanrossum@gmail.com"
+ ],
+ "expertise" : "Text and Fonts",
+ "name" : "Just van Rossum"
+ },
+ {
+ "emails" : [
"justin_fan@apple.com"
],
"expertise" : "WebGL, Canvas",