OLD | NEW |
---|---|
(Empty) | |
1 <html> | |
2 <head> | |
3 <script src="../inspector-test.js"></script> | |
4 <script src="../resources-test.js"></script> | |
5 <script src="../console-test.js"></script> | |
6 <script src="../indexeddb/indexeddb-test.js"></script> | |
7 <script> // window.debugTest=true; | |
dgozman
2017/04/11 17:27:29
remove debugTest
eostroukhov
2017/04/11 21:45:57
Done.
| |
8 | |
9 function test() | |
10 { | |
11 var mainFrameId = InspectorTest.resourceTreeModel.mainFrame.id; | |
12 | |
13 function dump(node, prefix) | |
14 { | |
15 for (var child of node.children()) { | |
16 InspectorTest.addResult(prefix + child.listItemElement.textContent); | |
17 dump(child, prefix + ' '); | |
18 } | |
19 } | |
20 | |
21 function createDatabase() { | |
22 return new Promise(resolve => InspectorTest.createDatabase(mainFrameId, 'Database1', resolve)); | |
23 } | |
24 | |
25 function waitABit() { | |
dgozman
2017/04/11 17:27:28
Why this?
eostroukhov
2017/04/11 21:45:57
Removed
| |
26 return new Promise(resolve => setTimeout(resolve, 500)); | |
27 } | |
28 | |
29 function waitForDatabase() { | |
30 var model = InspectorTest.mainTarget.model(Resources.IndexedDBModel); | |
31 return new Promise(resolve => { | |
32 var event = model.addEventListener(Resources.IndexedDBModel.Events.D atabaseAdded, () => { | |
33 Common.EventTarget.removeEventListeners([event]); | |
34 resolve(); | |
35 }); | |
36 model.refreshDatabaseNames(); | |
37 }) | |
38 } | |
39 | |
40 function createWebSQLDatabase() { | |
dgozman
2017/04/11 17:27:29
Let's move a helper in resources-test.js.
eostroukhov
2017/04/11 21:45:57
Done.
| |
41 return new Promise(resolve => { | |
42 var callbackl_id = 'createWebSQLDatabase_callback'; | |
43 InspectorTest.evaluateInPage('openDatabase("test-resource-view-websq l-db", "1.0", "", 1024 * 1024, dispatchCallback.bind(this, "' + callbackl_id + ' "))'); | |
44 InspectorTest.addConsoleSniffer(msg => { | |
dgozman
2017/04/11 17:27:28
Instead of sniffing for console, take a look into
eostroukhov
2017/04/11 21:45:57
Done.
| |
45 if (msg.messageText === callbackl_id) | |
46 resolve(); | |
47 }, false); | |
48 }); | |
49 } | |
50 | |
51 function fireFrameNavigated() { | |
52 var rtm = InspectorTest.mainTarget.model(SDK.ResourceTreeModel); | |
dgozman
2017/04/11 17:27:28
InspectorTest.resourceTreeModel
eostroukhov
2017/04/11 21:45:57
Done.
| |
53 rtm.dispatchEventToListeners(SDK.ResourceTreeModel.Events.FrameNavigated , rtm.mainFrame); | |
dgozman
2017/04/11 17:27:28
Faking an event is usually a bad practice. Instead
eostroukhov
2017/04/11 21:45:57
Done.
| |
54 } | |
55 | |
56 function dumpCurrentState(label) { | |
57 var view = UI.panels.resources; | |
58 InspectorTest.addResult(label); | |
59 dump(view._sidebar._sidebarTree.rootElement(), ''); | |
60 InspectorTest.addResult('Visible view is a query view: ' + (view.visible View instanceof Resources.DatabaseQueryView)); | |
61 } | |
62 | |
63 async function doTests() { | |
dgozman
2017/04/11 17:27:29
You can inline this function into test() directly.
eostroukhov
2017/04/11 21:45:57
Done.
| |
64 try{ | |
65 await createDatabase(); | |
66 await waitForDatabase(); | |
67 await createWebSQLDatabase(); | |
68 | |
69 UI.viewManager.showView('resources'); | |
70 UI.panels.resources._sidebar.databasesListTreeElement.firstChild().s elect(false, true); | |
71 dumpCurrentState('Initial state:'); | |
72 fireFrameNavigated(); | |
73 dumpCurrentState('After navigation:'); | |
74 } catch (e) { | |
dgozman
2017/04/11 17:27:28
inspector-test does this for you.
eostroukhov
2017/04/11 21:45:57
Done.
(on a separate note - I don't see inspector
| |
75 console.error(e); | |
76 } | |
77 } | |
78 | |
79 doTests().then(() => InspectorTest.completeTest(), reason => { | |
80 console.log(reason); | |
81 InspectorTest.completeTest(); | |
82 }); | |
83 } | |
84 </script> | |
85 </head> | |
86 <body onload="runTest()"> | |
87 <p>Tests Application Panel behavious on main frame navigation.</p> | |
dgozman
2017/04/11 17:27:29
typo: behaviour
eostroukhov
2017/04/11 21:45:57
Done.
| |
88 </body> | |
89 </html> | |
OLD | NEW |