fune/testing/web-platform/tests/encoding/textdecoder-arguments.any.js
rwaldron a97cd0a050 Bug 1853360 [wpt PR 41968] - Enable shadowrealm testing for encoding api, a=testonly
Automatic update from web-platform-tests
Enable shadowrealm testing for encoding api

Starting with tests that don't have additional dependencies.

--

wpt-commits: 7c9f8674d9809731e8919073d957d6233f6e0544
wpt-pr: 41968
2023-09-28 14:57:04 +00:00

50 lines
1.5 KiB
JavaScript

// META: global=window,dedicatedworker,shadowrealm
// META: title=Encoding API: TextDecoder decode() optional arguments
test(t => {
const decoder = new TextDecoder();
// Just passing nothing.
assert_equals(
decoder.decode(undefined), '',
'Undefined as first arg should decode to empty string');
// Flushing an incomplete sequence.
decoder.decode(new Uint8Array([0xc9]), {stream: true});
assert_equals(
decoder.decode(undefined), '\uFFFD',
'Undefined as first arg should flush the stream');
}, 'TextDecoder decode() with explicit undefined');
test(t => {
const decoder = new TextDecoder();
// Just passing nothing.
assert_equals(
decoder.decode(undefined, undefined), '',
'Undefined as first arg should decode to empty string');
// Flushing an incomplete sequence.
decoder.decode(new Uint8Array([0xc9]), {stream: true});
assert_equals(
decoder.decode(undefined, undefined), '\uFFFD',
'Undefined as first arg should flush the stream');
}, 'TextDecoder decode() with undefined and undefined');
test(t => {
const decoder = new TextDecoder();
// Just passing nothing.
assert_equals(
decoder.decode(undefined, {}), '',
'Undefined as first arg should decode to empty string');
// Flushing an incomplete sequence.
decoder.decode(new Uint8Array([0xc9]), {stream: true});
assert_equals(
decoder.decode(undefined, {}), '\uFFFD',
'Undefined as first arg should flush the stream');
}, 'TextDecoder decode() with undefined and options');