tor-browser

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

test_initializeTemporaryClient.js (1927B)


      1 /**
      2 * Any copyright is dedicated to the Public Domain.
      3 * http://creativecommons.org/publicdomain/zero/1.0/
      4 */
      5 
      6 /**
      7 * This test is mainly to verify that initializeTemporaryClient() does call
      8 * QuotaManager::EnsureTemporaryClientIsInitialized() which ensures client
      9 * directory existence.
     10 */
     11 
     12 async function testSteps() {
     13  const clientMetadata = {
     14    persistence: "default",
     15    principal: getPrincipal("https://foo.example.com"),
     16    client: "sdb",
     17    file: getRelativeFile("storage/default/https+++foo.example.com/sdb"),
     18  };
     19 
     20  info("Clearing");
     21 
     22  let request = clear();
     23  await requestFinished(request);
     24 
     25  info("Initializing");
     26 
     27  request = init();
     28  await requestFinished(request);
     29 
     30  info("Initializing temporary storage");
     31 
     32  request = initTemporaryStorage();
     33  await requestFinished(request);
     34 
     35  info("Initializing temporary client");
     36 
     37  request = initTemporaryClient(
     38    clientMetadata.persistence,
     39    clientMetadata.principal,
     40    clientMetadata.client,
     41    /* createIfNonExistent */ true
     42  );
     43 
     44  try {
     45    await requestFinished(request);
     46    ok(false, "Should have thrown");
     47  } catch (e) {
     48    ok(true, "Should have thrown");
     49    Assert.strictEqual(
     50      e.resultCode,
     51      Cr.NS_ERROR_DOM_QM_CLIENT_INIT_ORIGIN_UNINITIALIZED,
     52      "Threw right result code"
     53    );
     54  }
     55 
     56  ok(!clientMetadata.file.exists(), "Client directory does not exist");
     57 
     58  info("Initializing temporary origin");
     59 
     60  request = initTemporaryOrigin(
     61    clientMetadata.persistence,
     62    clientMetadata.principal
     63  );
     64  await requestFinished(request);
     65 
     66  ok(!clientMetadata.file.exists(), "Client directory does not exist");
     67 
     68  info("Initializing temporary client");
     69 
     70  request = initTemporaryClient(
     71    clientMetadata.persistence,
     72    clientMetadata.principal,
     73    clientMetadata.client,
     74    /* createIfNonExistent */ true
     75  );
     76  await requestFinished(request);
     77 
     78  ok(clientMetadata.file.exists(), "Client directory does exist");
     79 }