Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /IndexedDB/idbobjectstore_openCursor.any.html - WPT Dashboard Interop Dashboard
- /IndexedDB/idbobjectstore_openCursor.any.serviceworker.html - WPT Dashboard Interop Dashboard
- /IndexedDB/idbobjectstore_openCursor.any.sharedworker.html - WPT Dashboard Interop Dashboard
- /IndexedDB/idbobjectstore_openCursor.any.worker.html - WPT Dashboard Interop Dashboard
// META: global=window,worker
// META: title=IDBObjectStore.openCursor() - iterate through 100 objects
// META: script=resources/support.js
'use strict';
async_test(t => {
let db;
const open_rq = createdb(t);
open_rq.onupgradeneeded = t.step_func(e => {
db = e.target.result;
let store = db.createObjectStore('store');
for (let i = 0; i < 100; i++)
store.add('record_' + i, i);
});
open_rq.onsuccess = t.step_func(e => {
let count = 0;
let txn = db.transaction('store', 'readonly');
txn.objectStore('store').openCursor().onsuccess = t.step_func(function(e) {
if (e.target.result) {
count += 1;
e.target.result.continue();
}
})
txn.oncomplete = t.step_func(function() {
assert_equals(count, 100);
t.done();
})
});
});