Test IndexedDB's event.target.source in success callbacks

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)
source = event.target.source;
PASS source is null
objectStore = db.createObjectStore(objectStoreName, { autoIncrement: true });
request = objectStore.add({});
source = event.target.source;
PASS source is objectStore
PASS successfullyParsed is true

TEST COMPLETE

