blob: 0fbaa43314983890e061908a9ea197862c5191e2 [file] [log] [blame]
Test consistency of IndexedDB's cursor objects.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
dbname = "cursor-inconsistency.html"
indexedDB.deleteDatabase(dbname)
indexedDB.open(dbname)
setVersionSuccess():
trans = event.target.transaction
PASS trans is non-null.
objectStore = db.createObjectStore('basicStore')
objectStore.add('someValue1', 'someKey1').onerror = unexpectedErrorCallback
objectStore.add('someValue2', 'someKey2').onerror = unexpectedErrorCallback
objectStore.add('someValue3', 'someKey3').onerror = unexpectedErrorCallback
objectStore.add('someValue4', 'someKey4').onerror = unexpectedErrorCallback
openBasicCursor()
trans = db.transaction(['basicStore'], 'readwrite')
trans.objectStore('basicStore')
objectStore.openCursor(keyRange)
checkCursor()
storedCursor = event.target.result
PASS storedCursor is event.target.result
PASS storedCursor.key is "someKey1"
PASS event.target.result.key is "someKey1"
PASS storedCursor.value is "someValue1"
PASS event.target.result.value is "someValue1"
event.target.result.continue()
checkCursor()
PASS storedCursor is event.target.result
PASS storedCursor.key is "someKey2"
PASS event.target.result.key is "someKey2"
PASS storedCursor.value is "someValue2"
PASS event.target.result.value is "someValue2"
event.target.result.continue()
checkCursor()
PASS storedCursor is event.target.result
PASS storedCursor.key is "someKey3"
PASS event.target.result.key is "someKey3"
PASS storedCursor.value is "someValue3"
PASS event.target.result.value is "someValue3"
event.target.result.continue()
checkCursor()
PASS storedCursor is event.target.result
PASS storedCursor.key is "someKey4"
PASS event.target.result.key is "someKey4"
PASS storedCursor.value is "someValue4"
PASS event.target.result.value is "someValue4"
event.target.result.continue()
checkCursor()
PASS counter is 5
transactionComplete()
PASS successfullyParsed is true
TEST COMPLETE