1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
Test event propogation on IDBTransaction.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
webkitIndexedDB.open('name')
PASS 'onsuccess' in result is true
PASS 'onerror' in result is true
PASS 'readyState' in result is true
An event should fire shortly...
db = event.result
db.setVersion('new version')
PASS 'onsuccess' in result is true
PASS 'onerror' in result is true
PASS 'readyState' in result is true
An event should fire shortly...
trans = event.result
PASS trans !== null is true
trans.oncomplete = startTest
Deleted all object stores.
store = db.createObjectStore('storeName', null)
store.add({x: 'value', y: 'zzz'}, 'key')
Verifing abort
trans = db.transaction([], webkitIDBTransaction.READ_WRITE)
trans.onabort = abortFiredCallback
trans.oncomplete = unexpectedAbortCallback
db.addEventListener('abort', dbAbortCaptureCallback, true)
db.addEventListener('abort', dbAbortBubbleCallback, false)
db.addEventListener('complete', unexpectedCompleteCallback, true)
db.addEventListener('complete', unexpectedCompleteCallback, false)
store = trans.objectStore('storeName')
store.add({x: 'value', y: 'zzz'}, 'key')
In IDBDatabase abort capture
PASS dbCaptureFired is false
PASS abortFired is false
PASS dbBubbleFired1 is false
In abort handler
PASS dbCaptureFired is true
PASS abortFired is false
PASS dbBubbleFired1 is false
In IDBDatabase error bubble
PASS dbCaptureFired is true
PASS abortFired is true
PASS dbBubbleFired1 is false
Verifing success.
trans = db.transaction([], webkitIDBTransaction.READ_WRITE)
trans.oncomplete = completeFiredCallback
trans.onabort = unexpectedAbortCallback
db.removeEventListener('abort', dbAbortCaptureCallback, true)
db.removeEventListener('abort', dbAbortBubbleCallback, false)
db.removeEventListener('complete', unexpectedCompleteCallback, true)
db.removeEventListener('complete', unexpectedCompleteCallback, false)
db.addEventListener('complete', dbCompleteCaptureCallback, true)
db.addEventListener('complete', dbCompleteBubbleCallback, false)
db.addEventListener('abort', unexpectedAbortCallback, true)
db.addEventListener('abort', unexpectedAbortCallback, false)
store = trans.objectStore('storeName')
store.add({x: 'value', y: 'zzz'}, 'key2')
In IDBDatabase complete capture
PASS dbCaptureFired is false
PASS completeFired is false
PASS dbBubbleFired2 is false
In IDBRequest handler
PASS dbCaptureFired is true
PASS completeFired is false
PASS dbBubbleFired2 is false
PASS successfullyParsed is true
TEST COMPLETE
|