tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

Blob-array-buffer.any.js (1794B)


      1 // META: title=Blob Array Buffer
      2 // META: script=../support/Blob.js
      3 'use strict';
      4 
      5 promise_test(async () => {
      6  const input_arr = new TextEncoder().encode("PASS");
      7  const blob = new Blob([input_arr]);
      8  const array_buffer = await blob.arrayBuffer();
      9  assert_true(array_buffer instanceof ArrayBuffer);
     10  assert_equals_typed_array(new Uint8Array(array_buffer), input_arr);
     11 }, "Blob.arrayBuffer()")
     12 
     13 promise_test(async () => {
     14  const input_arr = new TextEncoder().encode("");
     15  const blob = new Blob([input_arr]);
     16  const array_buffer = await blob.arrayBuffer();
     17  assert_true(array_buffer instanceof ArrayBuffer);
     18  assert_equals_typed_array(new Uint8Array(array_buffer), input_arr);
     19 }, "Blob.arrayBuffer() empty Blob data")
     20 
     21 promise_test(async () => {
     22  const input_arr = new TextEncoder().encode("\u08B8\u000a");
     23  const blob = new Blob([input_arr]);
     24  const array_buffer = await blob.arrayBuffer();
     25  assert_equals_typed_array(new Uint8Array(array_buffer), input_arr);
     26 }, "Blob.arrayBuffer() non-ascii input")
     27 
     28 promise_test(async () => {
     29  const input_arr = [8, 241, 48, 123, 151];
     30  const typed_arr = new Uint8Array(input_arr);
     31  const blob = new Blob([typed_arr]);
     32  const array_buffer = await blob.arrayBuffer();
     33  assert_equals_typed_array(new Uint8Array(array_buffer), typed_arr);
     34 }, "Blob.arrayBuffer() non-unicode input")
     35 
     36 promise_test(async () => {
     37  const input_arr = new TextEncoder().encode("PASS");
     38  const blob = new Blob([input_arr]);
     39  const array_buffer_results = await Promise.all([blob.arrayBuffer(),
     40      blob.arrayBuffer(), blob.arrayBuffer()]);
     41  for (let array_buffer of array_buffer_results) {
     42    assert_true(array_buffer instanceof ArrayBuffer);
     43    assert_equals_typed_array(new Uint8Array(array_buffer), input_arr);
     44  }
     45 }, "Blob.arrayBuffer() concurrent reads")