IndexedDB: don't expose IDBDatabaseError to script
[WebKit-https.git] / LayoutTests / storage / indexeddb / objectstore-autoincrement-expected.txt
1 Test IndexedDB's IDBObjectStore auto-increment feature.
2
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.open('objectstore-autoincrement')
9 openSuccess():
10 db = event.target.result
11 db.setVersion('new version')
12 setVersionSuccess():
13 trans = event.target.result
14 PASS trans !== null is true
15 Deleted all object stores.
16 createObjectStore():
17 store = db.createObjectStore('StoreWithKeyPath', {keyPath: 'id', autoIncrement: true})
18 db.createObjectStore('StoreWithAutoIncrement', {autoIncrement: true})
19 db.createObjectStore('PlainOldStore', {autoIncrement: false})
20 db.createObjectStore('StoreWithLongKeyPath', {keyPath: 'a.b.c.id', autoIncrement: true})
21 storeNames = db.objectStoreNames
22 PASS store.name is "StoreWithKeyPath"
23 PASS store.keyPath is 'id'
24 PASS storeNames.contains('StoreWithKeyPath') is true
25 PASS storeNames.contains('StoreWithAutoIncrement') is true
26 PASS storeNames.contains('PlainOldStore') is true
27 PASS storeNames.length is 4
28 setVersionCompleted():
29 trans = db.transaction(['StoreWithKeyPath', 'StoreWithAutoIncrement', 'PlainOldStore'], IDBTransaction.READ_WRITE)
30 store = trans.objectStore('StoreWithKeyPath')
31 Insert into object store with auto increment and key path, with key in the object.
32 store.add({name: 'Jeffersson', number: '7010', id: 3})
33 addJefferssonSuccess():
34 PASS event.target.result is 3
35 Insert into object store with auto increment and key path, without key in the object.
36 store.add({name: 'Lincoln', number: '7012'})
37 addLincolnWithInjectKeySuccess():
38 PASS event.target.result is 4
39 store.get(4)
40 getLincolnAfterInjectedKeySuccess():
41 PASS event.target.result.name is "Lincoln"
42 PASS event.target.result.number is "7012"
43 PASS event.target.result.id is 4
44 store = trans.objectStore('StoreWithAutoIncrement')
45 Insert into object store with key gen using explicit key
46 store.add({name: 'Lincoln', number: '7012'}, 5)
47 addLincolnWithExplicitKeySuccess():
48 PASS event.target.result is 5
49 store.get(5)
50 getLincolnSuccess():
51 PASS event.target.result.name is "Lincoln"
52 PASS event.target.result.number is "7012"
53 store.put({name: 'Abraham', number: '2107'})
54 putAbrahamSuccess():
55 PASS event.target.result is 6
56 store.get(6)
57 getAbrahamSuccess():
58 PASS event.target.result.name is "Abraham"
59 PASS event.target.result.number is "2107"
60 store = trans.objectStore('PlainOldStore')
61 Try adding with no key to object store without auto increment.
62 Expecting exception from store.add({name: 'Adam'})
63 PASS Exception was thrown.
64 PASS code is IDBDatabaseException.DATA_ERR
65 store.add({name: 'Adam'}, 1)
66 addAdamSuccess():
67 PASS event.target.result is 1
68 testLongKeyPath():
69 trans = db.transaction('StoreWithLongKeyPath', IDBTransaction.READ_WRITE)
70 store = trans.objectStore('StoreWithLongKeyPath')
71 store.add({foo: 'bar'})
72 store.add({foo: 'bar', a: {}})
73 store.add({foo: 'bar', a: {b: {}}})
74 store.add({foo: 'bar', a: {b: {c: {}}}})
75 store.openCursor()
76 expected = null
77 count = 0
78 expected = cursor.value.a.b.c.id + 1
79 PASS cursor.value.foo is 'bar'
80 PASS cursor.value.a.b.c.id is expected
81 expected = cursor.value.a.b.c.id + 1
82 PASS cursor.value.foo is 'bar'
83 PASS cursor.value.a.b.c.id is expected
84 expected = cursor.value.a.b.c.id + 1
85 PASS cursor.value.foo is 'bar'
86 PASS cursor.value.a.b.c.id is expected
87 expected = cursor.value.a.b.c.id + 1
88 PASS count is 4
89 PASS successfullyParsed is true
90
91 TEST COMPLETE
92