gecko/dom/indexedDB/test/unit/test_transaction_lifetimes.js

39 lines
909 B
JavaScript
Raw Normal View History

2012-01-04 07:43:33 -08:00
/**
* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/
*/
var testGenerator = testSteps();
function testSteps()
{
let request = mozIndexedDB.open(this.window ? window.location.pathname : "Splendid Test", 1);
request.onerror = errorHandler;
request.onupgradeneeded = grabEventAndContinueHandler;
let event = yield;
let db = event.target.result;
db.onerror = errorHandler;
event.target.onsuccess = continueToNextStep;
db.createObjectStore("foo", { autoIncrement: true });
yield;
let transaction = db.transaction("foo");
continueToNextStep();
yield;
try {
transaction.objectStore("foo");
ok(false, "Should have thrown!");
}
catch (e) {
ok(e instanceof IDBDatabaseException, "Got database exception.");
is(e.code, IDBDatabaseException.NOT_ALLOWED_ERR, "Good error code.");
}
finishTest();
yield;
}