| Test IndexedDB's objectStore.openKeyCursor + the cursor it produces in depth. |
| |
| On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". |
| |
| dbname = "objectstore-keycursor.html" |
| indexedDB.deleteDatabase(dbname) |
| indexedDB.open(dbname) |
| objectStore = db.createObjectStore('someObjectStore') |
| |
| |
| Verify that specifying an invalid direction raises an exception: |
| Expecting TypeError exception from objectStore.openKeyCursor(0, 'invalid-direction') |
| PASS Exception was thrown. |
| PASS objectStore.openKeyCursor(0, 'invalid-direction') threw TypeError: Failed to execute 'openKeyCursor' on 'IDBObjectStore': The provided value 'invalid-direction' is not a valid enum value of type IDBCursorDirection. |
| |
| |
| objectStore.add('', testData[nextToAdd]) |
| objectStore.add('', testData[nextToAdd]) |
| objectStore.add('', testData[nextToAdd]) |
| objectStore.add('', testData[nextToAdd]) |
| objectStore.add('', testData[nextToAdd]) |
| objectStore.add('', testData[nextToAdd]) |
| Scheduling tests... |
| Running tests... |
| |
| |
| Next test: lower open bound is 0; sorted ascending. |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 0; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 0; sorted ascending. |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 0; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 0; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 0; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 0; sorted descending. |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 0; sorted descending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 1; sorted ascending. |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 1; sorted ascending. |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 1; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 1; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 1; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 1; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 1; sorted descending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 1; sorted descending. |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 2; sorted ascending. |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 2; sorted ascending. |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 2; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 2; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 2; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 2; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 2; sorted descending. |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 2; sorted descending. |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 3; sorted ascending. |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 3; sorted ascending. |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 3; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 3; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 3; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 3; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 3; sorted descending. |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 3; sorted descending. |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 4; sorted ascending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 4; sorted ascending. |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 4; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 4; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 4; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 4; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 4; sorted descending. |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 4; sorted descending. |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 5; sorted ascending. |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 5; sorted ascending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 5; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 5; sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: lower open bound is 5; sorted descending. |
| PASS event.target.result is null |
| |
| |
| Next test: lower bound is 5; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: upper open bound is 5; sorted descending. |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: upper bound is 5; sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| |
| |
| Next test: null key path sorted ascending. |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result is null |
| |
| |
| Next test: null key path sorted descending. |
| PASS event.target.result.key is testData[5] |
| PASS event.target.result.key is testData[4] |
| PASS event.target.result.key is testData[3] |
| PASS event.target.result.key is testData[2] |
| PASS event.target.result.key is testData[1] |
| PASS event.target.result.key is testData[0] |
| PASS event.target.result is null |
| PASS successfullyParsed is true |
| |
| TEST COMPLETE |
| |