tor-browser

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

reading-autoincrement-store-cursors.any.js (1536B)


      1 // META: global=window,dedicatedworker,sharedworker,serviceworker
      2 // META: script=resources/support-promises.js
      3 // META: script=resources/reading-autoincrement-common.js
      4 'use strict';
      5 
      6 promise_test(async testCase => {
      7  const database = await setupAutoincrementDatabase(testCase);
      8 
      9  const transaction = database.transaction(['store'], 'readonly');
     10  const store = transaction.objectStore('store');
     11 
     12  const result = await getAllViaCursor(testCase, store);
     13  assert_equals(result.length, 32);
     14  for (let i = 1; i <= 32; ++i) {
     15    assert_equals(result[i - 1].key, i, 'Autoincrement key');
     16    assert_equals(result[i - 1].primaryKey, i, 'Autoincrement primary key');
     17    assert_equals(result[i - 1].value.id, i, 'Autoincrement key in value');
     18    assert_equals(result[i - 1].value.name, nameForId(i),
     19                  'string property in value');
     20  }
     21 
     22  database.close();
     23 }, 'IDBObjectStore.openCursor() iterates over an autoincrement store');
     24 
     25 promise_test(async testCase => {
     26  const database = await setupAutoincrementDatabase(testCase);
     27 
     28  const transaction = database.transaction(['store'], 'readonly');
     29  const store = transaction.objectStore('store');
     30 
     31  const result = await getAllKeysViaCursor(testCase, store);
     32  assert_equals(result.length, 32);
     33  for (let i = 1; i <= 32; ++i) {
     34    assert_equals(result[i - 1].key, i, 'Incorrect autoincrement key');
     35    assert_equals(result[i - 1].primaryKey, i, 'Incorrect primary key');
     36  }
     37 
     38  database.close();
     39 }, 'IDBObjectStore.openKeyCursor() iterates over an autoincrement store');