Skip to content

Ideas for additional coverage for base64 #4031

Open
@Ms2ger

Description

Ideas for additional coverage:

  • 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.)

Originally posted by @anba in #3994 (comment)

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions