Skip to content

Add tests for common TextDecoder implementation mistakes

b132d29
Select commit
Loading
Failed to load commit list.
Open

Add tests for common TextDecoder implementation mistakes #56892

Add tests for common TextDecoder implementation mistakes
b132d29
Select commit
Loading
Failed to load commit list.
Community-TC Integration / wpt-chrome-dev-stability succeeded Dec 21, 2025 in 4m 13s

Community-TC (pull_request)

Verify that all tests affected by a pull request are stable when executed in chrome.

Details

View task in Taskcluster | View logs in Taskcluster | View task group in Taskcluster

Task Status

Started: 2025-12-21T07:09:42.531Z
Resolved: 2025-12-21T07:13:03.704Z
Task Execution Time: 3 minutes, 21 seconds, 173 milliseconds
Task Status: completed
Reason Resolved: completed
RunId: 0

Artifacts

- public/logs/live_backing.log
- public/logs/live.log
- public/results/checkrun.md

WPT Command: python3 ./wpt run --channel=dev --verify --verify-no-chaos-mode --verify-repeat-loop=0 --verify-repeat-restart=10 --github-checks-text-file=/home/test/artifacts/checkrun.md --affected base_head --log-mach-level=info --log-mach=- -y --no-pause --no-restart-on-unexpected --install-fonts --verify-log-full --no-headless --enable-swiftshader --install-browser --install-webdriver chrome


[taskcluster 2025-12-21 07:09:42.722Z] Task ID: FXcjtXoTSKS1QIRTpbGg7Q
[taskcluster 2025-12-21 07:09:42.722Z] Worker ID: 6150589004286403558
[taskcluster 2025-12-21 07:09:42.723Z] Worker Group: us-east1-c
[taskcluster 2025-12-21 07:09:42.723Z] Worker Node Type: projects/757942385826/machineTypes/n2-standard-4
[taskcluster 2025-12-21 07:09:42.723Z] Worker Pool: proj-wpt/ci
[taskcluster 2025-12-21 07:09:42.723Z] Worker Version: 46.1.0
[taskcluster 2025-12-21 07:09:42.723Z] Public IP: 34.75.237.67
[taskcluster 2025-12-21 07:09:42.723Z] Hostname: proj-wpt-ci-jswqrt2qsaauzir15xj8iq

ac811f28856d - Started downloading
ac811f28856d - Downloaded in 0.035 seconds
8f84a9f2102e - Started downloading
40516d781e70 - Started downloading
44ebbf800033 - Started downloading
44ebbf800033 - Downloaded in 0.051 seconds
8f84a9f2102e - Downloaded in 0.233 seconds
a8884b21e40e - Started downloading
4f4fb700ef54 - Started downloading
4f4fb700ef54 - Downloaded in 0 seconds
79c347416ee8 - Started downloading

...(11864 lines hidden)...

 0:46.39 wptserve INFO Stopped WebTransport over HTTP/3 server on 127.0.0.1:11000
 0:46.59 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:46.59 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
 0:46.84 INFO Removed font: Ahem.ttf
 0:46.88 INFO Closing logging queue
 0:46.88 INFO queue closed
 0:46.90 INFO ::: Ran 10 of expected 10 iterations.
 0:46.90 INFO ## All results ##

 0:46.90 INFO ### /encoding/textdecoder-mistakes.any.html ###
 0:46.90 INFO |                              Subtest                              | Results |                            Messages                            |
 0:46.90 INFO |-------------------------------------------------------------------|---------|----------------------------------------------------------------|
 0:46.90 INFO |                                                                   | OK      |                                                                |
 0:46.90 INFO | `Invalid Unicode input is replaced: utf-8`                        | PASS    |                                                                |
 0:46.90 INFO | `Invalid Unicode input is replaced: utf-16le`                     | PASS    |                                                                |
 0:46.90 INFO | `Invalid Unicode input is replaced: utf-16be`                     | PASS    |                                                                |
 0:46.90 INFO | `Single-byte encodings are ASCII supersets: windows-1252`         | PASS    |                                                                |
 0:46.90 INFO | `Single-byte encodings are ASCII supersets: ibm866`               | PASS    |                                                                |
 0:46.90 INFO | `Most legacy multi-byte encodings are ASCII supersets: gbk`       | PASS    |                                                                |
 0:46.90 INFO | `Most legacy multi-byte encodings are ASCII supersets: gb18030`   | PASS    |                                                                |
 0:46.90 INFO | `Most legacy multi-byte encodings are ASCII supersets: big5`      | PASS    |                                                                |
 0:46.90 INFO | `Most legacy multi-byte encodings are ASCII supersets: euc-jp`    | PASS    |                                                                |
 0:46.90 INFO | `Most legacy multi-byte encodings are ASCII supersets: shift_jis` | PASS    |                                                                |
 0:46.90 INFO | `Most legacy multi-byte encodings are ASCII supersets: euc-kr`    | PASS    |                                                                |
 0:46.90 INFO | `Fast path misdetection: windows-874`                             | PASS    |                                                                |
 0:46.90 INFO | `Fast path misdetection: windows-1250`                            | PASS    |                                                                |
 0:46.90 INFO | `Fast path misdetection: windows-1252`                            | FAIL    | `assert_equals: expected "" but got ""`                      |
 0:46.90 INFO | `Fast path misdetection: windows-1253`                            | PASS    |                                                                |
 0:46.90 INFO | `Fast path misdetection: windows-1254`                            | PASS    |                                                                |
 0:46.90 INFO | `Fast path misdetection: windows-1255`                            | PASS    |                                                                |
 0:46.90 INFO | `Fast path misdetection: windows-1257`                            | PASS    |                                                                |
 0:46.90 INFO | `Fast path misdetection: windows-1258`                            | PASS    |                                                                |
 0:46.90 INFO | `Fast path misdetection: latin1`                                  | FAIL    | `assert_equals: expected "" but got ""`                      |
 0:46.90 INFO | `Fast path misdetection: ascii`                                   | FAIL    | `assert_equals: expected "" but got ""`                      |
 0:46.90 INFO | `utf-16le does not produce more chars than truncated`             | PASS    |                                                                |
 0:46.90 INFO | `utf-16be does not produce more chars than truncated`             | PASS    |                                                                |
 0:46.90 INFO | `windows-1252 maps bytes outside of latin1: windows-1252`         | PASS    |                                                                |
 0:46.90 INFO | `windows-1252 maps bytes outside of latin1: latin1`               | PASS    |                                                                |
 0:46.90 INFO | `windows-1252 maps bytes outside of latin1: ascii`                | PASS    |                                                                |
 0:46.90 INFO | `windows-1252 does not contain unmapped chars: windows-1252`      | PASS    |                                                                |
 0:46.90 INFO | `windows-1252 does not contain unmapped chars: latin1`            | PASS    |                                                                |
 0:46.90 INFO | `windows-1252 does not contain unmapped chars: ascii`             | PASS    |                                                                |
 0:46.90 INFO | `specific: x-user-defined`                                        | PASS    |                                                                |
 0:46.90 INFO | `specific: big5`                                                  | PASS    |                                                                |
 0:46.90 INFO | `iso-8859-8-i decodes bytes the same way as iso-8859-8`           | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: koi8-u`                                    | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: windows-874`                               | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: windows-1252`                              | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: windows-1253`                              | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: windows-1255`                              | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: macintosh`                                 | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: windows-1250`                              | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: windows-1251`                              | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: windows-1254`                              | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: windows-1257`                              | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: windows-1258`                              | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: iso-8859-8-i`                              | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: iso-8859-16`                               | PASS    |                                                                |
 0:46.90 INFO | `selected single-byte: x-mac-cyrillic`                            | PASS    |                                                                |
 0:46.90 INFO | `Concatenating two ISO-2022-JP outputs is not always valid`       | FAIL    | `assert_equals: expected "¥\ufffd¥" but got "\ufffd¥\ufffd¥"`  |
 0:46.90 INFO | `gb18030 version and ranges`                                      | PASS    |                                                                |
 0:46.90 INFO | `gbk version and ranges`                                          | PASS    |                                                                |
 0:46.90 INFO | `gbk decoder is gb18030 decoder`                                  | PASS    |                                                                |
 0:46.90 INFO | `Replacement, push back ASCII characters: big5`                   | FAIL    | `assert_equals: expected "\ufffd@" but got "\ufffd䏰"`          |
 0:46.90 INFO | `Replacement, push back ASCII characters: iso-2022-jp`            | FAIL    | `assert_equals: expected "\ufffd\ufffd" but got "\ufffd$"`     |
 0:46.90 INFO | `Replacement, push back ASCII characters: gb18030`                | PASS    |                                                                |
 0:46.90 INFO | `Replacement, push back ASCII characters: euc-jp`                 | PASS    |                                                                |
 0:46.90 INFO | `Replacement, push back ASCII characters: euc-kr`                 | PASS    |                                                                |
 0:46.90 INFO | `Replacement, push back ASCII characters: shift_jis`              | PASS    |                                                                |
 0:46.90 INFO | `Replacement, push back ASCII characters: gbk`                    | PASS    |                                                                |
 0:46.90 INFO | `Sticky multibyte state: iso-2022-jp`                             | FAIL    | `assert_equals: expected "@" but got "\ufffd@"`                |
 0:46.90 INFO | `Sticky multibyte state: gb18030`                                 | PASS    |                                                                |
 0:46.90 INFO | `Sticky multibyte state: big5`                                    | PASS    |                                                                |
 0:46.90 INFO | `Sticky multibyte state: shift_jis`                               | PASS    |                                                                |
 0:46.90 INFO | `Sticky multibyte state: euc-kr`                                  | PASS    |                                                                |
 0:46.90 INFO | `Sticky multibyte state: gbk`                                     | PASS    |                                                                |
 0:46.90 INFO | `Sticky multibyte state: euc-jp`                                  | FAIL    | `assert_equals: expected " " but got "\ufffd"`                 |
 0:46.90 INFO | `Sticky fatal BOM: utf-8`                                         | PASS    |                                                                |
 0:46.90 INFO | `Sticky fatal BOM: utf-16le`                                      | PASS    |                                                                |
 0:46.90 INFO | `Sticky fatal BOM: utf-16be`                                      | PASS    |                                                                |
 0:46.90 INFO | `BOM splitting / repeats: utf-8`                                  | PASS    |                                                                |
 0:46.90 INFO | `BOM splitting / repeats: utf-16le`                               | PASS    |                                                                |
 0:46.90 INFO | `BOM splitting / repeats: utf-16be`                               | PASS    |                                                                |
 0:46.90 INFO | `stream: utf-8`                                                   | FAIL    | `assert_equals: expected "\ufffdÀ**" but got "\ufffdÀ\ufffd*"` |
 0:46.90 INFO | `stream: gbk`                                                     | PASS    |                                                                |
 0:46.90 INFO | `stream: gb18030`                                                 | PASS    |                                                                |
 0:46.90 INFO | `stream: big5`                                                    | PASS    |                                                                |
 0:46.90 INFO | `stream: shift_jis`                                               | PASS    |                                                                |
 0:46.90 INFO | `stream: euc-kr`                                                  | PASS    |                                                                |
 0:46.90 INFO | `stream: euc-jp`                                                  | PASS    |                                                                |
 0:46.90 INFO | `stream: iso-2022-jp`                                             | PASS    |                                                                |
 0:46.90 INFO | `fatal stream: utf-8`                                             | PASS    |                                                                |
 0:46.90 INFO | `fatal stream: utf-16le`                                          | PASS    |                                                                |
 0:46.90 INFO | `fatal stream: utf-16be`                                          | PASS    |                                                                |
 0:46.90 INFO | `fatal stream: iso-2022-jp`                                       | PASS    |                                                                |
 0:46.90 INFO | `WPT mislabels: euc-jp`                                           | PASS    |                                                                |
 0:46.90 INFO | `WPT mislabels: shift_jis`                                        | PASS    |                                                                |
 0:46.90 INFO | `WPT mislabels: iso-2022-jp`                                      | PASS    |                                                                |
 0:46.90 INFO | `labels: invalid non-ascii`                                       | PASS    |                                                                |
 0:46.91 INFO | `labels: transformed`                                             | PASS    |                                                                |
 0:46.91 INFO 
 0:46.91 INFO ### /encoding/textdecoder-mistakes.any.worker.html ###
 0:46.91 INFO |                              Subtest                              | Results |                            Messages                            |
 0:46.91 INFO |-------------------------------------------------------------------|---------|----------------------------------------------------------------|
 0:46.91 INFO |                                                                   | OK      |                                                                |
 0:46.91 INFO | `Invalid Unicode input is replaced: utf-8`                        | PASS    |                                                                |
 0:46.91 INFO | `Invalid Unicode input is replaced: utf-16le`                     | PASS    |                                                                |
 0:46.91 INFO | `Invalid Unicode input is replaced: utf-16be`                     | PASS    |                                                                |
 0:46.91 INFO | `Single-byte encodings are ASCII supersets: windows-1252`         | PASS    |                                                                |
 0:46.91 INFO | `Single-byte encodings are ASCII supersets: ibm866`               | PASS    |                                                                |
 0:46.91 INFO | `Most legacy multi-byte encodings are ASCII supersets: gbk`       | PASS    |                                                                |
 0:46.91 INFO | `Most legacy multi-byte encodings are ASCII supersets: gb18030`   | PASS    |                                                                |
 0:46.91 INFO | `Most legacy multi-byte encodings are ASCII supersets: big5`      | PASS    |                                                                |
 0:46.91 INFO | `Most legacy multi-byte encodings are ASCII supersets: euc-jp`    | PASS    |                                                                |
 0:46.91 INFO | `Most legacy multi-byte encodings are ASCII supersets: shift_jis` | PASS    |                                                                |
 0:46.91 INFO | `Most legacy multi-byte encodings are ASCII supersets: euc-kr`    | PASS    |                                                                |
 0:46.91 INFO | `Fast path misdetection: windows-874`                             | PASS    |                                                                |
 0:46.91 INFO | `Fast path misdetection: windows-1250`                            | PASS    |                                                                |
 0:46.91 INFO | `Fast path misdetection: windows-1252`                            | FAIL    | `assert_equals: expected "" but got ""`                      |
 0:46.91 INFO | `Fast path misdetection: windows-1253`                            | PASS    |                                                                |
 0:46.91 INFO | `Fast path misdetection: windows-1254`                            | PASS    |                                                                |
 0:46.91 INFO | `Fast path misdetection: windows-1255`                            | PASS    |                                                                |
 0:46.91 INFO | `Fast path misdetection: windows-1257`                            | PASS    |                                                                |
 0:46.91 INFO | `Fast path misdetection: windows-1258`                            | PASS    |                                                                |
 0:46.91 INFO | `Fast path misdetection: latin1`                                  | FAIL    | `assert_equals: expected "" but got ""`                      |
 0:46.91 INFO | `Fast path misdetection: ascii`                                   | FAIL    | `assert_equals: expected "" but got ""`                      |
 0:46.91 INFO | `utf-16le does not produce more chars than truncated`             | PASS    |                                                                |
 0:46.91 INFO | `utf-16be does not produce more chars than truncated`             | PASS    |                                                                |
 0:46.91 INFO | `windows-1252 maps bytes outside of latin1: windows-1252`         | PASS    |                                                                |
 0:46.91 INFO | `windows-1252 maps bytes outside of latin1: latin1`               | PASS    |                                                                |
 0:46.91 INFO | `windows-1252 maps bytes outside of latin1: ascii`                | PASS    |                                                                |
 0:46.91 INFO | `windows-1252 does not contain unmapped chars: windows-1252`      | PASS    |                                                                |
 0:46.91 INFO | `windows-1252 does not contain unmapped chars: latin1`            | PASS    |                                                                |
 0:46.91 INFO | `windows-1252 does not contain unmapped chars: ascii`             | PASS    |                                                                |
 0:46.91 INFO | `specific: x-user-defined`                                        | PASS    |                                                                |
 0:46.91 INFO | `specific: big5`                                                  | PASS    |                                                                |
 0:46.91 INFO | `iso-8859-8-i decodes bytes the same way as iso-8859-8`           | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: koi8-u`                                    | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: windows-874`                               | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: windows-1252`                              | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: windows-1253`                              | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: windows-1255`                              | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: macintosh`                                 | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: windows-1250`                              | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: windows-1251`                              | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: windows-1254`                              | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: windows-1257`                              | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: windows-1258`                              | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: iso-8859-8-i`                              | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: iso-8859-16`                               | PASS    |                                                                |
 0:46.91 INFO | `selected single-byte: x-mac-cyrillic`                            | PASS    |                                                                |
 0:46.91 INFO | `Concatenating two ISO-2022-JP outputs is not always valid`       | FAIL    | `assert_equals: expected "¥\ufffd¥" but got "\ufffd¥\ufffd¥"`  |
 0:46.91 INFO | `gb18030 version and ranges`                                      | PASS    |                                                                |
 0:46.91 INFO | `gbk version and ranges`                                          | PASS    |                                                                |
 0:46.91 INFO | `gbk decoder is gb18030 decoder`                                  | PASS    |                                                                |
 0:46.91 INFO | `Replacement, push back ASCII characters: big5`                   | FAIL    | `assert_equals: expected "\ufffd@" but got "\ufffd䏰"`          |
 0:46.91 INFO | `Replacement, push back ASCII characters: iso-2022-jp`            | FAIL    | `assert_equals: expected "\ufffd\ufffd" but got "\ufffd$"`     |
 0:46.91 INFO | `Replacement, push back ASCII characters: gb18030`                | PASS    |                                                                |
 0:46.91 INFO | `Replacement, push back ASCII characters: euc-jp`                 | PASS    |                                                                |
 0:46.91 INFO | `Replacement, push back ASCII characters: euc-kr`                 | PASS    |                                                                |
 0:46.91 INFO | `Replacement, push back ASCII characters: shift_jis`              | PASS    |                                                                |
 0:46.91 INFO | `Replacement, push back ASCII characters: gbk`                    | PASS    |                                                                |
 0:46.91 INFO | `Sticky multibyte state: iso-2022-jp`                             | FAIL    | `assert_equals: expected "@" but got "\ufffd@"`                |
 0:46.91 INFO | `Sticky multibyte state: gb18030`                                 | PASS    |                                                                |
 0:46.91 INFO | `Sticky multibyte state: big5`                                    | PASS    |                                                                |
 0:46.91 INFO | `Sticky multibyte state: shift_jis`                               | PASS    |                                                                |
 0:46.91 INFO | `Sticky multibyte state: euc-kr`                                  | PASS    |                                                                |
 0:46.91 INFO | `Sticky multibyte state: gbk`                                     | PASS    |                                                                |
 0:46.91 INFO | `Sticky multibyte state: euc-jp`                                  | FAIL    | `assert_equals: expected " " but got "\ufffd"`                 |
 0:46.91 INFO | `Sticky fatal BOM: utf-8`                                         | PASS    |                                                                |
 0:46.91 INFO | `Sticky fatal BOM: utf-16le`                                      | PASS    |                                                                |
 0:46.91 INFO | `Sticky fatal BOM: utf-16be`                                      | PASS    |                                                                |
 0:46.91 INFO | `BOM splitting / repeats: utf-8`                                  | PASS    |                                                                |
 0:46.91 INFO | `BOM splitting / repeats: utf-16le`                               | PASS    |                                                                |
 0:46.91 INFO | `BOM splitting / repeats: utf-16be`                               | PASS    |                                                                |
 0:46.91 INFO | `stream: utf-8`                                                   | FAIL    | `assert_equals: expected "\ufffdÀ**" but got "\ufffdÀ\ufffd*"` |
 0:46.91 INFO | `stream: gbk`                                                     | PASS    |                                                                |
 0:46.91 INFO | `stream: gb18030`                                                 | PASS    |                                                                |
 0:46.91 INFO | `stream: big5`                                                    | PASS    |                                                                |
 0:46.91 INFO | `stream: shift_jis`                                               | PASS    |                                                                |
 0:46.91 INFO | `stream: euc-kr`                                                  | PASS    |                                                                |
 0:46.91 INFO | `stream: euc-jp`                                                  | PASS    |                                                                |
 0:46.91 INFO | `stream: iso-2022-jp`                                             | PASS    |                                                                |
 0:46.91 INFO | `fatal stream: utf-8`                                             | PASS    |                                                                |
 0:46.91 INFO | `fatal stream: utf-16le`                                          | PASS    |                                                                |
 0:46.91 INFO | `fatal stream: utf-16be`                                          | PASS    |                                                                |
 0:46.91 INFO | `fatal stream: iso-2022-jp`                                       | PASS    |                                                                |
 0:46.91 INFO | `WPT mislabels: euc-jp`                                           | PASS    |                                                                |
 0:46.91 INFO | `WPT mislabels: shift_jis`                                        | PASS    |                                                                |
 0:46.91 INFO | `WPT mislabels: iso-2022-jp`                                      | PASS    |                                                                |
 0:46.91 INFO | `labels: invalid non-ascii`                                       | PASS    |                                                                |
 0:46.91 INFO | `labels: transformed`                                             | PASS    |                                                                |
 0:46.91 INFO 
 0:46.91 INFO ::: Running tests in a loop with restarts 10 times : PASS
 0:46.91 INFO :::
 0:46.91 INFO ::: Test verification PASS
 0:46.91 INFO :::
[taskcluster 2025-12-21 07:13:02.486Z] === Task Finished ===
[taskcluster 2025-12-21 07:13:02.877Z] Successful task run with exit code: 0 completed in 200.158 seconds