mirror of
https://github.com/denoland/deno.git
synced 2025-09-28 05:04:48 +00:00
fix: align encoding APIs to spec using WPT (#9004)
This commit is contained in:
parent
ee9c0c8373
commit
0d41e21b0e
10 changed files with 346 additions and 175 deletions
|
@ -100,59 +100,7 @@ function textDecoder2() {
|
|||
assert(decoder.decode(fixture) === "𝓽𝓮𝔁𝓽");
|
||||
}
|
||||
|
||||
function textDecoderIgnoreBOM() {
|
||||
// deno-fmt-ignore
|
||||
const fixture = new Uint8Array([
|
||||
0xef,
|
||||
0xbb,
|
||||
0xbf,
|
||||
0xf0,
|
||||
0x9d,
|
||||
0x93,
|
||||
0xbd,
|
||||
0xf0,
|
||||
0x9d,
|
||||
0x93,
|
||||
0xae,
|
||||
0xf0,
|
||||
0x9d,
|
||||
0x94,
|
||||
0x81,
|
||||
0xf0,
|
||||
0x9d,
|
||||
0x93,
|
||||
0xbd,
|
||||
]);
|
||||
const decoder = new TextDecoder("utf-8", { ignoreBOM: true });
|
||||
assert(decoder.decode(fixture) === "𝓽𝓮𝔁𝓽");
|
||||
}
|
||||
|
||||
function textDecoderNotBOM() {
|
||||
// deno-fmt-ignore
|
||||
const fixture = new Uint8Array([
|
||||
0xef,
|
||||
0xbb,
|
||||
0x89,
|
||||
0xf0,
|
||||
0x9d,
|
||||
0x93,
|
||||
0xbd,
|
||||
0xf0,
|
||||
0x9d,
|
||||
0x93,
|
||||
0xae,
|
||||
0xf0,
|
||||
0x9d,
|
||||
0x94,
|
||||
0x81,
|
||||
0xf0,
|
||||
0x9d,
|
||||
0x93,
|
||||
0xbd,
|
||||
]);
|
||||
const decoder = new TextDecoder("utf-8", { ignoreBOM: true });
|
||||
assert(decoder.decode(fixture) === "ﻉ𝓽𝓮𝔁𝓽");
|
||||
}
|
||||
// ignoreBOM is tested by WPT
|
||||
|
||||
function textDecoderASCII() {
|
||||
const fixture = new Uint8Array([0x89, 0x95, 0x9f, 0xbf]);
|
||||
|
@ -1252,8 +1200,6 @@ function main() {
|
|||
atobThrows2();
|
||||
btoaFailed();
|
||||
textDecoder2();
|
||||
textDecoderIgnoreBOM();
|
||||
textDecoderNotBOM();
|
||||
textDecoderASCII();
|
||||
textDecoderErrorEncoding();
|
||||
textDecoderHandlesUndefined();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue