blob: eb381c4d45ad66d3a20267564048c59e68f356ce [file] [log] [blame]
// META: global=window,worker
// META: title=IDBObjectStore.add() - autoIncrement and out-of-line keys
// META: script=resources/support.js
// @author Microsoft <https://www.microsoft.com>
'use_strict';
let db;
const t = async_test();
const record = { property: "data" };
const expected_keys = [ 1, 2, 3, 4 ];
const open_rq = createdb(t);
open_rq.onupgradeneeded = function(e) {
db = e.target.result;
const objStore = db.createObjectStore("store", { autoIncrement: true });
objStore.add(record);
objStore.add(record);
objStore.add(record);
objStore.add(record);
};
open_rq.onsuccess = function(e) {
const actual_keys = [],
rq = db.transaction("store", "readonly", {durability: 'relaxed'})
.objectStore("store")
.openCursor();
rq.onsuccess = t.step_func(function(e) {
const cursor = e.target.result;
if (cursor) {
actual_keys.push(cursor.key);
cursor.continue();
}
else {
assert_array_equals(actual_keys, expected_keys);
t.done();
}
});
};