Diff
Modified: trunk/LayoutTests/ChangeLog (134818 => 134819)
--- trunk/LayoutTests/ChangeLog 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/ChangeLog 2012-11-15 20:54:44 UTC (rev 134819)
@@ -1,3 +1,52 @@
+2012-11-15 David Grogan <[email protected]>
+
+ IndexedDB test conversions batch 5
+ https://bugs.webkit.org/show_bug.cgi?id=102308
+
+ Reviewed by Tony Chang.
+
+ * storage/indexeddb/mozilla/cursor-update-updates-indexes-expected.txt:
+ * storage/indexeddb/mozilla/event-source-expected.txt:
+ * storage/indexeddb/mozilla/global-data-expected.txt:
+ * storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt:
+ * storage/indexeddb/mozilla/odd-result-order-expected.txt:
+ * storage/indexeddb/mozilla/remove-objectstore-expected.txt:
+ * storage/indexeddb/mozilla/resources/cursor-update-updates-indexes.js:
+ Calls indexedDBTest a bunch of times, which seems awkward, but is
+ really convenient.
+
+ * storage/indexeddb/mozilla/resources/event-source.js:
+ Now that setVersion is gone, it appears that no request should have
+ a database as a source so the dropped test is ok.
+
+ * storage/indexeddb/mozilla/resources/global-data.js:
+ (prepareDatabase):
+ (open2Success):
+ * storage/indexeddb/mozilla/resources/key-requirements-put-null-key.js:
+ (prepareDatabase):
+ * storage/indexeddb/mozilla/resources/odd-result-order.js:
+ The tests had to be run in slightly different order but they are all
+ preserved.
+
+ (prepareDatabase):
+ (openSuccess):
+ (deleteSuccess):
+ * storage/indexeddb/mozilla/resources/remove-objectstore.js:
+ (prepareDatabase):
+ (checkObjectStore):
+ (inSetVersion2.request.onsuccess):
+ (inSetVersion2):
+ (setVersion3):
+ (inSetVersion3):
+ (deleteThirdObjectStore):
+ * storage/indexeddb/objectstore-removeobjectstore-expected.txt:
+ * storage/indexeddb/resources/objectstore-removeobjectstore.js:
+ (getValue):
+ (checkResult):
+ (addIndex):
+ (deleteObjectStore):
+ (createObjectStoreAgain):
+
2012-11-15 Alpha Lam <[email protected]>
[chromium] WebGL texImage2D fails with deferred image decoding
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/cursor-update-updates-indexes-expected.txt (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/cursor-update-updates-indexes-expected.txt 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/cursor-update-updates-indexes-expected.txt 2012-11-15 20:54:44 UTC (rev 134819)
@@ -1,14 +1,8 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
Test IndexedDB: mutating records with a r/w cursor updates indexes on those records
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
-
-indexedDB.open(name)
-openSuccess():
-db = event.target.result
firstValue = 'hi';
secondValue = 'bye';
objectStoreInfo = [
@@ -22,15 +16,21 @@
entry: { data: firstValue } },
];
i = 0;
+
+indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
+
+dbname = "cursor-update-updates-indexes.html"
+indexedDB.deleteDatabase(dbname)
info = objectStoreInfo[i];
-request = db.setVersion('1')
+indexedDB.open(dbname)
setupObjectStoreAndCreateIndex():
-Deleted all object stores.
+db = event.target.result
objectStore = db.createObjectStore(info.name, info.options);
index = objectStore.createIndex('data_index', 'data', { unique: false });
uniqueIndex = objectStore.createIndex('unique_data_index', 'data', { unique: true });
request = objectStore.add(info.entry, info.key);
trans = db.transaction(info.name, 'readwrite')
+trans._oncomplete_ = test
objectStore = trans.objectStore(info.name)
index = objectStore.index('data_index')
uniqueIndex = objectStore.index('unique_data_index')
@@ -44,15 +44,21 @@
request = uniqueIndex.get(secondValue);
PASS value.data is event.target.result.data
i++;
+db.close()
+indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
+
+dbname = "cursor-update-updates-indexes.html"
+indexedDB.deleteDatabase(dbname)
info = objectStoreInfo[i];
-request = db.setVersion('1')
+indexedDB.open(dbname)
setupObjectStoreAndCreateIndex():
-Deleted all object stores.
+db = event.target.result
objectStore = db.createObjectStore(info.name, info.options);
index = objectStore.createIndex('data_index', 'data', { unique: false });
uniqueIndex = objectStore.createIndex('unique_data_index', 'data', { unique: true });
request = objectStore.add(info.entry);
trans = db.transaction(info.name, 'readwrite')
+trans._oncomplete_ = test
objectStore = trans.objectStore(info.name)
index = objectStore.index('data_index')
uniqueIndex = objectStore.index('unique_data_index')
@@ -66,15 +72,21 @@
request = uniqueIndex.get(secondValue);
PASS value.data is event.target.result.data
i++;
+db.close()
+indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
+
+dbname = "cursor-update-updates-indexes.html"
+indexedDB.deleteDatabase(dbname)
info = objectStoreInfo[i];
-request = db.setVersion('1')
+indexedDB.open(dbname)
setupObjectStoreAndCreateIndex():
-Deleted all object stores.
+db = event.target.result
objectStore = db.createObjectStore(info.name, info.options);
index = objectStore.createIndex('data_index', 'data', { unique: false });
uniqueIndex = objectStore.createIndex('unique_data_index', 'data', { unique: true });
request = objectStore.add(info.entry);
trans = db.transaction(info.name, 'readwrite')
+trans._oncomplete_ = test
objectStore = trans.objectStore(info.name)
index = objectStore.index('data_index')
uniqueIndex = objectStore.index('unique_data_index')
@@ -88,15 +100,21 @@
request = uniqueIndex.get(secondValue);
PASS value.data is event.target.result.data
i++;
+db.close()
+indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
+
+dbname = "cursor-update-updates-indexes.html"
+indexedDB.deleteDatabase(dbname)
info = objectStoreInfo[i];
-request = db.setVersion('1')
+indexedDB.open(dbname)
setupObjectStoreAndCreateIndex():
-Deleted all object stores.
+db = event.target.result
objectStore = db.createObjectStore(info.name, info.options);
index = objectStore.createIndex('data_index', 'data', { unique: false });
uniqueIndex = objectStore.createIndex('unique_data_index', 'data', { unique: true });
request = objectStore.add(info.entry);
trans = db.transaction(info.name, 'readwrite')
+trans._oncomplete_ = test
objectStore = trans.objectStore(info.name)
index = objectStore.index('data_index')
uniqueIndex = objectStore.index('unique_data_index')
@@ -110,6 +128,7 @@
request = uniqueIndex.get(secondValue);
PASS value.data is event.target.result.data
i++;
+db.close()
PASS successfullyParsed is true
TEST COMPLETE
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/event-source-expected.txt (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/event-source-expected.txt 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/event-source-expected.txt 2012-11-15 20:54:44 UTC (rev 134819)
@@ -1,4 +1,3 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
Test IndexedDB's event.target.source in success callbacks
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
@@ -6,14 +5,11 @@
indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
-indexedDB.open(name)
+dbname = "event-source.html"
+indexedDB.deleteDatabase(dbname)
+indexedDB.open(dbname)
source = event.target.source;
PASS source is null
-db = event.target.result
-request = db.setVersion('1')
-source = event.target.source;
-PASS source is db
-Deleted all object stores.
objectStore = db.createObjectStore(objectStoreName, { autoIncrement: true });
request = objectStore.add({});
source = event.target.source;
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/global-data-expected.txt (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/global-data-expected.txt 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/global-data-expected.txt 2012-11-15 20:54:44 UTC (rev 134819)
@@ -1,4 +1,3 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
Test IndexedDB's opening DB more than once
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
@@ -6,12 +5,11 @@
indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
-indexedDB.open(name)
-db1 = event.target.result
-request = db1.setVersion('1')
-Deleted all object stores.
+dbname = "global-data.html"
+indexedDB.deleteDatabase(dbname)
+indexedDB.open(dbname)
db1.createObjectStore(objectStoreName, objectStoreOptions);
-indexedDB.open(name);
+indexedDB.open(dbname);
db2 = event.target.result
PASS db1 !== db2 is true
PASS db1.objectStoreNames.length is 1
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/key-requirements-put-null-key-expected.txt 2012-11-15 20:54:44 UTC (rev 134819)
@@ -1,4 +1,3 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
Test IndexedDB's behavior put()ing with null key
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
@@ -6,10 +5,9 @@
indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
-indexedDB.open(name)
-db = event.target.result
-request = db.setVersion('1')
-Deleted all object stores.
+dbname = "key-requirements-put-null-key.html"
+indexedDB.deleteDatabase(dbname)
+indexedDB.open(dbname)
objectStore = db.createObjectStore('bar');
Expecting exception from objectStore.put({}, null);
PASS Exception was thrown.
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/odd-result-order-expected.txt (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/odd-result-order-expected.txt 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/odd-result-order-expected.txt 2012-11-15 20:54:44 UTC (rev 134819)
@@ -1,4 +1,3 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
Test IndexedDB: request result persists in setTimeout callback
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
@@ -6,18 +5,16 @@
indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
-indexedDB.open(name)
+dbname = "odd-result-order.html"
+indexedDB.deleteDatabase(dbname)
+indexedDB.open(dbname)
+objectStore = db.createObjectStore('foo', { keyPath: 'key', autoIncrement: true });
+index = objectStore.createIndex('foo', 'index');
openSuccess():
db = null;
db = request.result;
checkDatabaseType():
PASS db instanceof IDBDatabase is true
-request = db.setVersion('1')
-setupObjectStore():
-Deleted all object stores.
-objectStore = db.createObjectStore('foo', { keyPath: 'key', autoIncrement: true });
-index = objectStore.createIndex('foo', 'index');
-event.target.transaction._oncomplete_ = addRecord;
addRecord():
objectStore = db.transaction('foo', 'readwrite').objectStore('foo');
data = { key: 5, index: 10 };
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/remove-objectstore-expected.txt (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/remove-objectstore-expected.txt 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/remove-objectstore-expected.txt 2012-11-15 20:54:44 UTC (rev 134819)
@@ -1,4 +1,3 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
Test IndexedDB deleting an object store
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
@@ -6,11 +5,10 @@
indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
-indexedDB.open(name)
-db = event.target.result
+dbname = "remove-objectstore.html"
+indexedDB.deleteDatabase(dbname)
+indexedDB.open(dbname)
PASS db.objectStoreNames.length is 0
-request = db.setVersion('1')
-Deleted all object stores.
objectStoreName = 'Objects';
objectStore = db.createObjectStore(objectStoreName, { keyPath: 'foo' });
request = objectStore.add({foo: i});
@@ -115,6 +113,8 @@
request = objectStore.add({foo: i});
PASS db.objectStoreNames.length is 1
PASS db.objectStoreNames.item(0) is objectStoreName
+db.close()
+request = indexedDB.open(dbname, 2)
db.deleteObjectStore(objectStore.name);
PASS db.objectStoreNames.length is 0
objectStore = db.createObjectStore(objectStoreName, { keyPath: 'foo' });
@@ -124,7 +124,8 @@
PASS event.target.result is null
db.deleteObjectStore(objectStore.name);
PASS db.objectStoreNames.length is 0
-request = db.setVersion('3');
+db.close()
+request = indexedDB.open(dbname, 3)
objectStore = db.createObjectStore(objectStoreName, { keyPath: 'foo' });
request = objectStore.add({foo:'bar'});
db.deleteObjectStore(objectStoreName);
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/resources/cursor-update-updates-indexes.js (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/resources/cursor-update-updates-indexes.js 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/resources/cursor-update-updates-indexes.js 2012-11-15 20:54:44 UTC (rev 134819)
@@ -11,23 +11,9 @@
description("Test IndexedDB: mutating records with a r/w cursor updates indexes on those records");
-function test()
-{
- removeVendorPrefixes();
-
- name = self.location.pathname;
- request = evalAndLog("indexedDB.open(name)");
- request._onsuccess_ = openSuccess;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function openSuccess()
-{
- debug("openSuccess():");
- db = evalAndLog("db = event.target.result");
- firstValue = evalAndLog("firstValue = 'hi';");
- secondValue = evalAndLog("secondValue = 'bye';");
- objectStoreInfo = evalAndLog("objectStoreInfo = [\n" +
+firstValue = evalAndLog("firstValue = 'hi';");
+secondValue = evalAndLog("secondValue = 'bye';");
+objectStoreInfo = evalAndLog("objectStoreInfo = [\n" +
" { name: '1', options: {}, key: 1,\n" +
" entry: { data: firstValue } },\n" +
" { name: '2', options: { keyPath: 'foo' },\n" +
@@ -37,17 +23,16 @@
" { name: '4', options: { keyPath: 'foo', autoIncrement: true },\n" +
" entry: { data: firstValue } },\n" +
" ];");
- i = evalAndLog("i = 0;");
- setVersion();
-}
+i = evalAndLog("i = 0;");
+debug("");
-function setVersion()
+test();
+
+function test()
{
if (i < objectStoreInfo.length) {
+ indexedDBTest(setupObjectStoreAndCreateIndexAndAdd, openCursor);
info = evalAndLog("info = objectStoreInfo[i];");
- request = evalAndLog("request = db.setVersion('1')");
- request._onsuccess_ = setupObjectStoreAndCreateIndexAndAdd;
- request._onerror_ = unexpectedErrorCallback;
} else {
finishJSTest();
}
@@ -55,9 +40,8 @@
function setupObjectStoreAndCreateIndexAndAdd()
{
- var transaction = event.target.result;
debug("setupObjectStoreAndCreateIndex():");
- deleteAllObjectStores(db);
+ evalAndLog("db = event.target.result");
objectStore = evalAndLog("objectStore = db.createObjectStore(info.name, info.options);");
@@ -69,18 +53,16 @@
request = evalAndLog("request = objectStore.add(info.entry);");
}
request._onerror_ = unexpectedErrorCallback;
-
- transaction._oncomplete_ = function () {
- evalAndLog("trans = db.transaction(info.name, 'readwrite')");
- evalAndLog("objectStore = trans.objectStore(info.name)");
- evalAndLog("index = objectStore.index('data_index')");
- evalAndLog("uniqueIndex = objectStore.index('unique_data_index')");
- openCursor();
- };
}
function openCursor()
{
+ evalAndLog("trans = db.transaction(info.name, 'readwrite')");
+ evalAndLog("trans._oncomplete_ = test");
+ trans._onabort_ = unexpectedAbortCallback;
+ evalAndLog("objectStore = trans.objectStore(info.name)");
+ evalAndLog("index = objectStore.index('data_index')");
+ evalAndLog("uniqueIndex = objectStore.index('unique_data_index')");
request = evalAndLog("request = objectStore.openCursor();");
request._onsuccess_ = updateCursor;
request._onerror_ = unexpectedErrorCallback;
@@ -115,7 +97,5 @@
{
shouldBe("value.data", "event.target.result.data");
evalAndLog("i++;");
- setVersion();
+ evalAndLog("db.close()");
}
-
-test();
\ No newline at end of file
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/resources/event-source.js (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/resources/event-source.js 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/resources/event-source.js 2012-11-15 20:54:44 UTC (rev 134819)
@@ -11,34 +11,13 @@
description("Test IndexedDB's event.target.source in success callbacks");
-function test()
+indexedDBTest(prepareDatabase, finishJSTest);
+function prepareDatabase()
{
- removeVendorPrefixes();
-
- name = self.location.pathname;
- request = evalAndLog("indexedDB.open(name)");
- request._onsuccess_ = openSuccess;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function openSuccess()
-{
+ db = event.target.result;
source = evalAndLog("source = event.target.source;");
shouldBeNull("source");
- db = evalAndLog("db = event.target.result");
- request = evalAndLog("request = db.setVersion('1')");
- request._onsuccess_ = cleanDatabase;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function cleanDatabase()
-{
- source = evalAndLog("source = event.target.source;");
- shouldBe("source", "db");
-
- deleteAllObjectStores(db);
-
objectStoreName = "Objects";
objectStore = evalAndLog("objectStore = db.createObjectStore(objectStoreName, { autoIncrement: true });");
request = evalAndLog("request = objectStore.add({});");
@@ -50,7 +29,4 @@
{
source = evalAndLog("source = event.target.source;");
shouldBe("source", "objectStore");
- finishJSTest();
}
-
-test();
\ No newline at end of file
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/resources/global-data.js (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/resources/global-data.js 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/resources/global-data.js 2012-11-15 20:54:44 UTC (rev 134819)
@@ -11,34 +11,16 @@
description("Test IndexedDB's opening DB more than once");
-function test()
+indexedDBTest(prepareDatabase);
+function prepareDatabase()
{
- removeVendorPrefixes();
+ db1 = event.target.result;
- name = self.location.pathname;
- request = evalAndLog("indexedDB.open(name)");
- request._onsuccess_ = openSuccess;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function openSuccess()
-{
- db1 = evalAndLog("db1 = event.target.result");
-
- request = evalAndLog("request = db1.setVersion('1')");
- request._onsuccess_ = cleanDatabase;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function cleanDatabase()
-{
- deleteAllObjectStores(db1);
-
objectStoreName = "Objects";
objectStoreOptions = { keyPath: 'id', autoIncrement: true };
evalAndLog("db1.createObjectStore(objectStoreName, objectStoreOptions);");
- request = evalAndLog("indexedDB.open(name);");
+ request = evalAndLog("indexedDB.open(dbname);");
request._onsuccess_ = open2Success;
request._onerror_ = unexpectedErrorCallback;
}
@@ -64,5 +46,3 @@
finishJSTest();
}
-
-test();
\ No newline at end of file
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/resources/key-requirements-put-null-key.js (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/resources/key-requirements-put-null-key.js 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/resources/key-requirements-put-null-key.js 2012-11-15 20:54:44 UTC (rev 134819)
@@ -11,31 +11,11 @@
description("Test IndexedDB's behavior put()ing with null key");
-function test()
+indexedDBTest(prepareDatabase);
+function prepareDatabase()
{
- removeVendorPrefixes();
-
- name = self.location.pathname;
- request = evalAndLog("indexedDB.open(name)");
- request._onsuccess_ = openSuccess;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function openSuccess()
-{
- db = evalAndLog("db = event.target.result");
-
- request = evalAndLog("request = db.setVersion('1')");
- request._onsuccess_ = cleanDatabase;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function cleanDatabase()
-{
- deleteAllObjectStores(db);
+ db = event.target.result;
objectStore = evalAndLog("objectStore = db.createObjectStore('bar');");
evalAndExpectException("objectStore.put({}, null);", "IDBDatabaseException.DATA_ERR");
finishJSTest();
}
-
-test();
\ No newline at end of file
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/resources/odd-result-order.js (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/resources/odd-result-order.js 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/resources/odd-result-order.js 2012-11-15 20:54:44 UTC (rev 134819)
@@ -11,14 +11,13 @@
description("Test IndexedDB: request result persists in setTimeout callback");
-function test()
+indexedDBTest(prepareDatabase, openSuccess);
+function prepareDatabase()
{
- removeVendorPrefixes();
-
- name = self.location.pathname;
- request = evalAndLog("indexedDB.open(name)");
- request._onsuccess_ = openSuccess;
- request._onerror_ = unexpectedErrorCallback;
+ request = event.target;
+ db = event.target.result;
+ objectStore = evalAndLog("objectStore = db.createObjectStore('foo', { keyPath: 'key', autoIncrement: true });");
+ index = evalAndLog("index = objectStore.createIndex('foo', 'index');");
}
function openSuccess()
@@ -28,6 +27,7 @@
setTimeout(function() {
db = evalAndLog("db = request.result;");
checkDatabaseType();
+ addRecord();
}, 0);
}
@@ -36,20 +36,8 @@
debug("checkDatabaseType():");
shouldBeTrue("db instanceof IDBDatabase");
db._onerror_ = unexpectedErrorCallback;
- request = evalAndLog("request = db.setVersion('1')");
- request._onsuccess_ = setupObjectStore;
- request._onerror_ = unexpectedErrorCallback;
}
-function setupObjectStore()
-{
- debug("setupObjectStore():");
- deleteAllObjectStores(db);
- objectStore = evalAndLog("objectStore = db.createObjectStore('foo', { keyPath: 'key', autoIncrement: true });");
- index = evalAndLog("index = objectStore.createIndex('foo', 'index');");
- evalAndLog("event.target.transaction._oncomplete_ = addRecord;");
-}
-
function addRecord()
{
debug("addRecord():");
@@ -112,5 +100,3 @@
debug("deleteSuccess():");
finishJSTest();
}
-
-test();
\ No newline at end of file
Modified: trunk/LayoutTests/storage/indexeddb/mozilla/resources/remove-objectstore.js (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/mozilla/resources/remove-objectstore.js 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/mozilla/resources/remove-objectstore.js 2012-11-15 20:54:44 UTC (rev 134819)
@@ -11,31 +11,12 @@
description("Test IndexedDB deleting an object store");
-function test()
+indexedDBTest(prepareDatabase, checkObjectStore);
+function prepareDatabase()
{
- removeVendorPrefixes();
-
- name = self.location.pathname;
- request = evalAndLog("indexedDB.open(name)");
- request._onsuccess_ = openSuccess;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function openSuccess()
-{
- db = evalAndLog("db = event.target.result");
+ db = event.target.result;
shouldBe("db.objectStoreNames.length", "0");
- request = evalAndLog("request = db.setVersion('1')");
- request._onsuccess_ = createAndPopulateObjectStore;
- request._onerror_ = unexpectedErrorCallback;
-}
-
-function createAndPopulateObjectStore()
-{
- var v1_transaction = event.target.result;
- deleteAllObjectStores(db);
-
objectStoreName = evalAndLog("objectStoreName = 'Objects';");
objectStore = evalAndLog("objectStore = db.createObjectStore(objectStoreName, { keyPath: 'foo' });");
@@ -43,22 +24,24 @@
request = evalAndLog("request = objectStore.add({foo: i});");
request._onerror_ = unexpectedErrorCallback;
}
- v1_transaction._oncomplete_ = checkObjectStore;
}
function checkObjectStore()
{
shouldBe("db.objectStoreNames.length", "1");
shouldBe("db.objectStoreNames.item(0)", "objectStoreName");
+ evalAndLog("db.close()");
- request = db.setVersion('2');
+ evalAndLog("request = indexedDB.open(dbname, 2)");
request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = postSetVersion2;
+ request._onblocked_ = unexpectedBlockedCallback;
+ request._onupgradeneeded_ = inSetVersion2;
+ request._onsuccess_ = setVersion3;
}
-function postSetVersion2()
+function inSetVersion2()
{
- var v2_transaction = event.target.result;
+ db = event.target.result;
evalAndLog("db.deleteObjectStore(objectStore.name);");
shouldBe("db.objectStoreNames.length", "0");
@@ -72,7 +55,6 @@
shouldBe("event.target.result", "null");
deleteSecondObjectStore();
};
- v2_transaction._oncomplete_ = setVersion3;
}
function deleteSecondObjectStore()
@@ -83,13 +65,18 @@
function setVersion3()
{
- request = evalAndLog("request = db.setVersion('3');");
+ evalAndLog("db.close()");
+
+ evalAndLog("request = indexedDB.open(dbname, 3)");
request._onerror_ = unexpectedErrorCallback;
- request._onsuccess_ = postSetVersion3;
+ request._onblocked_ = unexpectedBlockedCallback;
+ request._onupgradeneeded_ = inSetVersion3;
+ request._onsuccess_ = finishJSTest;
}
-function postSetVersion3()
+function inSetVersion3()
{
+ db = event.target.result;
objectStore = evalAndLog("objectStore = db.createObjectStore(objectStoreName, { keyPath: 'foo' });");
request = evalAndLog("request = objectStore.add({foo:'bar'});");
request._onerror_ = unexpectedErrorCallback;
@@ -99,7 +86,4 @@
function deleteThirdObjectStore()
{
evalAndLog("db.deleteObjectStore(objectStoreName);");
- finishJSTest();
}
-
-test();
\ No newline at end of file
Modified: trunk/LayoutTests/storage/indexeddb/objectstore-removeobjectstore-expected.txt (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/objectstore-removeobjectstore-expected.txt 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/objectstore-removeobjectstore-expected.txt 2012-11-15 20:54:44 UTC (rev 134819)
@@ -1,4 +1,3 @@
-CONSOLE MESSAGE: The setVersion() method is non-standard and will be removed. Use the "upgradeneeded" event instead.
Test IndexedDB's webkitIDBObjectStore.deleteObjectStore().
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
@@ -17,9 +16,8 @@
store = transaction.objectStore('storeName')
store.get('key')
PASS event.target.result is "value"
-db.setVersion('new version')
-trans = event.target.result
-PASS trans is non-null.
+db.close()
+indexedDB.open(dbname, 2)
db.deleteObjectStore('storeName')
db.createObjectStore('storeName', null)
db.transaction(['storeName'])
Modified: trunk/LayoutTests/storage/indexeddb/resources/objectstore-removeobjectstore.js (134818 => 134819)
--- trunk/LayoutTests/storage/indexeddb/resources/objectstore-removeobjectstore.js 2012-11-15 20:54:27 UTC (rev 134818)
+++ trunk/LayoutTests/storage/indexeddb/resources/objectstore-removeobjectstore.js 2012-11-15 20:54:44 UTC (rev 134819)
@@ -23,26 +23,34 @@
{
transaction = evalAndLog("db.transaction(['storeName'])");
transaction._onabort_ = unexpectedErrorCallback;
+ transaction._oncomplete_ = addIndex;
var store = evalAndLog("store = transaction.objectStore('storeName')");
request = evalAndLog("store.get('key')");
- request._onsuccess_ = addIndex;
+ request._onsuccess_ = checkResult;
request._onerror_ = unexpectedErrorCallback;
}
-function addIndex()
+function checkResult()
{
shouldBeEqualToString("event.target.result", "value");
+}
- request = evalAndLog("db.setVersion('new version')");
- request._onsuccess_ = deleteObjectStore;
+function addIndex()
+{
+ evalAndLog("db.close()");
+
+ request = evalAndLog("indexedDB.open(dbname, 2)");
+ request._onupgradeneeded_ = deleteObjectStore;
request._onerror_ = unexpectedErrorCallback;
+ request._onsuccess_ = getValueAgain;
+ request._onblocked_ = unexpectedBlockedCallback;
}
function deleteObjectStore()
{
- self.trans = evalAndLog("trans = event.target.result");
- shouldBeNonNull("trans");
+ trans = request.transaction;
+ db = request.result;
trans._onabort_ = unexpectedAbortCallback;
evalAndLog("db.deleteObjectStore('storeName')");
@@ -52,7 +60,6 @@
function createObjectStoreAgain()
{
evalAndLog("db.createObjectStore('storeName', null)");
- trans._oncomplete_ = getValueAgain;
}
function getValueAgain()