When a versionchange transaction is aborted, the version and newly created object stores should be reset

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.deleteDatabase(dbname)
indexedDB.open(dbname)
objectStore = db.createObjectStore('foo');
PASS db.objectStoreNames.length is 1
index = objectStore.createIndex('bar', 'baz');
PASS objectStore.indexNames.length is 1
event.target.transaction.abort();
PASS db.version is 0
PASS db.objectStoreNames.length is 0
PASS successfullyParsed is true

TEST COMPLETE

