tor-browser

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

test_simpledb.js (1178B)


      1 /**
      2 * Any copyright is dedicated to the Public Domain.
      3 * http://creativecommons.org/publicdomain/zero/1.0/
      4 */
      5 
      6 loadScript("dom/quota/test/common/file.js");
      7 
      8 async function testSteps() {
      9  const name = "data";
     10  const bufferSize = 100;
     11 
     12  let database = getSimpleDatabase();
     13 
     14  let request = database.open(name);
     15  await requestFinished(request);
     16 
     17  let buffer1 = getRandomBuffer(bufferSize);
     18 
     19  request = database.write(buffer1);
     20  await requestFinished(request);
     21 
     22  request = database.seek(0);
     23  await requestFinished(request);
     24 
     25  request = database.read(bufferSize);
     26  let result = await requestFinished(request);
     27 
     28  let buffer2 = result.getAsArrayBuffer();
     29 
     30  ok(compareBuffers(buffer1, buffer2), "Buffers equal.");
     31 
     32  let database2 = getSimpleDatabase();
     33 
     34  try {
     35    request = database2.open(name);
     36    await requestFinished(request);
     37    ok(false, "Should have thrown!");
     38  } catch (ex) {
     39    ok(request.resultCode == NS_ERROR_STORAGE_BUSY, "Good result code.");
     40  }
     41 
     42  request = database.close();
     43  await requestFinished(request);
     44 
     45  request = database2.open(name);
     46  await requestFinished(request);
     47 
     48  request = database2.close();
     49  await requestFinished(request);
     50 }