3 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
4
5
6 indexedDB = self.indexedDB || self.webkitIndexedDB || self.mozIndexedDB || self.msIndexedDB || self.OIndexedDB;
7
8 indexedDB.deleteDatabase(dbname)
9 indexedDB.open(dbname)
10 store = db.createObjectStore('store')
11 store.createIndex('index', 'sorted')
12
13 populating store...
14 trans = db.transaction('store', 'readwrite')
15 store = trans.objectStore('store');
16 store.put({sorted: 3, value: 111}, 1)
17 store.put({sorted: 2, value: 222}, 2)
18 store.put({sorted: 1, value: 333}, 3)
19 store.put({sorted: 10, value: 444}, 17)
20 store.put({sorted: 10, value: 555}, 16)
21 store.put({sorted: 10, value: 666}, 15)
22
23 testFarRangeCursor: upper bound is well out of range, results always the same, whether open or closed
24 storeReq = store.openCursor(IDBKeyRange.upperBound(7, false), 'prev')
25 PASS cursor.key is 3
26 PASS cursor.value.value is 333
27 DONE
28
29 storeReq = store.openCursor(IDBKeyRange.upperBound(7, true), 'prev')
30 PASS cursor.key is 3
31 PASS cursor.value.value is 333
32 DONE
33
34 storeReq = index.openCursor(IDBKeyRange.upperBound(7, false), 'prev')
35 PASS cursor.key is 3
36 PASS cursor.value.value is 111
37 PASS cursor.primaryKey is 1
38 DONE
39
40 storeReq = index.openCursor(IDBKeyRange.upperBound(7, true), 'prev')
41 PASS cursor.key is 3
42 PASS cursor.value.value is 111
43 PASS cursor.primaryKey is 1
44 DONE
45
46 storeReq = index.openKeyCursor(IDBKeyRange.upperBound(7, false), 'prev')
47 PASS cursor.key is 3
48 PASS cursor.primaryKey is 1
49 DONE
50
51 storeReq = index.openKeyCursor(IDBKeyRange.upperBound(7, true), 'prev')
52 PASS cursor.key is 3
53 PASS cursor.primaryKey is 1
54 DONE
55
56 storeReq = store.openCursor(IDBKeyRange.upperBound(3, false), 'prev')
57 PASS cursor.key is 3
58 PASS cursor.value.value is 333
59 DONE
60
61 storeReq = store.openCursor(IDBKeyRange.upperBound(3, true), 'prev')
62 PASS cursor.key is 2
63 PASS cursor.value.value is 222
64 DONE
65
66 storeReq = index.openCursor(IDBKeyRange.upperBound(3, false), 'prev')
67 PASS cursor.key is 3
68 PASS cursor.value.value is 111
69 PASS cursor.primaryKey is 1
70 DONE
71
72 storeReq = index.openCursor(IDBKeyRange.upperBound(3, true), 'prev')
73 PASS cursor.key is 2
74 PASS cursor.value.value is 222
75 PASS cursor.primaryKey is 2
76 DONE
77
78 storeReq = index.openKeyCursor(IDBKeyRange.upperBound(3, false), 'prev')
79 PASS cursor.key is 3
80 PASS cursor.primaryKey is 1
81 DONE
82
83 storeReq = index.openKeyCursor(IDBKeyRange.upperBound(3, true), 'prev')
84 PASS cursor.key is 2
85 PASS cursor.primaryKey is 2
86 DONE
87
88 testNoDuplicate: there are 3 values, but we should return always the first one
89 storeReq = store.openCursor(IDBKeyRange.upperBound(15, false), 'prevunique')
90 PASS cursor.key is 15
91 PASS cursor.value.value is 666
92 PASS cursor.primaryKey is 15
93 DONE
94
95 storeReq = index.openCursor(IDBKeyRange.upperBound(15, false), 'prevunique')
96 PASS cursor.key is 10
97 PASS cursor.value.value is 666
98 PASS cursor.primaryKey is 15
99 DONE
100
101 storeReq = index.openKeyCursor(IDBKeyRange.upperBound(15, false), 'prevunique')
102 PASS cursor.key is 10
103 PASS cursor.primaryKey is 15
104 DONE
105
106 PASS successfullyParsed is true
107
108 TEST COMPLETE
109