Whitespace between and after the padding character =, e.g. Uint8Array.fromBase64("Zg= =") and Uint8Array.fromBase64("Zg= = ").
Uint8Array.prototype.setFrom{Base64,Hex} doesn't modify the typed array when the input string is invalid.
Typed array is backed by a SharedArrayBuffer.
lastChunkHandling option is present, but set to undefined, e.g. the options object is {lastChunkHandling: undefined}.
lastChunkHandling option is an invalid string value, e.g. the options object is {lastChunkHandling: "bad"}.
alphabet option is present, but set to undefined, e.g. the options object is {alphabet: undefined}.
alphabet and lastChunkHandling options are read in the correct order.
Extra bits with three element trailing chunk and strict chunk handling, e.g. Uint8Array.fromBase64("ZZZ=", {lastChunkHandling: "strict"}). (The two element chunk case is already covered.)
Ideas for additional coverage:
=
, e.g.Uint8Array.fromBase64("Zg= =")
andUint8Array.fromBase64("Zg= = ")
.Uint8Array.prototype.setFrom{Base64,Hex}
doesn't modify the typed array when the input string is invalid.lastChunkHandling
option is present, but set toundefined
, e.g. the options object is{lastChunkHandling: undefined}
.lastChunkHandling
option is an invalid string value, e.g. the options object is{lastChunkHandling: "bad"}
.alphabet
option is present, but set toundefined
, e.g. the options object is{alphabet: undefined}
.alphabet
andlastChunkHandling
options are read in the correct order.Uint8Array.fromBase64("ZZZ=", {lastChunkHandling: "strict"})
. (The two element chunk case is already covered.)Originally posted by @anba in https://github.com/tc39/test262/issues/3994#issuecomment-1997745956