tor-browser

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

idbtransaction-oncomplete.any.js (984B)


      1 // META: title=IDBTransaction - complete event
      2 // META: global=window,worker
      3 // META: script=resources/support.js
      4 
      5 'use strict';
      6 
      7 async_test(t => {
      8  let db;
      9  let store;
     10  let open_rq = createdb(t);
     11  let stages = [];
     12 
     13  open_rq.onupgradeneeded = function(e) {
     14    stages.push('upgradeneeded');
     15 
     16    db = e.target.result;
     17    store = db.createObjectStore('store');
     18 
     19    e.target.transaction.oncomplete = function() {
     20      stages.push('complete');
     21    };
     22  };
     23 
     24  open_rq.onsuccess = function(e) {
     25    stages.push('success');
     26 
     27    let tx = db.transaction('store', 'readonly');
     28    store = tx.objectStore('store');
     29    store.openCursor().onsuccess =
     30        function(e) {
     31      stages.push('opencursor');
     32    }
     33 
     34    db.transaction('store', 'readonly')
     35        .objectStore('store')
     36        .count()
     37        .onsuccess = t.step_func(function(e) {
     38      assert_array_equals(stages, [
     39        'upgradeneeded', 'complete', 'success', 'opencursor'
     40      ]);
     41      t.done();
     42    });
     43  }
     44 });