OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 /** | |
6 * Export all public members onto TestRunner namespace so test writers have a si mpler API | |
7 * @fileoverview OK to use private properties in tests. | |
8 * @suppress {accessControls} | |
9 */ | |
10 | |
11 /** | |
12 * @param {!SDK.Target} target | |
13 */ | |
14 IntegrationTestRunner._setupTestHelpers = function(target) { | |
15 TestRunner.CSSAgent = target.cssAgent(); | |
16 TestRunner.DeviceOrientationAgent = target.deviceOrientationAgent(); | |
17 TestRunner.DOMAgent = target.domAgent(); | |
18 TestRunner.DOMDebuggerAgent = target.domdebuggerAgent(); | |
19 TestRunner.DebuggerAgent = target.debuggerAgent(); | |
20 TestRunner.EmulationAgent = target.emulationAgent(); | |
21 TestRunner.HeapProfilerAgent = target.heapProfilerAgent(); | |
22 TestRunner.InspectorAgent = target.inspectorAgent(); | |
23 TestRunner.NetworkAgent = target.networkAgent(); | |
24 TestRunner.PageAgent = target.pageAgent(); | |
25 TestRunner.ProfilerAgent = target.profilerAgent(); | |
26 TestRunner.RuntimeAgent = target.runtimeAgent(); | |
27 TestRunner.TargetAgent = target.targetAgent(); | |
28 | |
29 TestRunner.networkManager = target.model(SDK.NetworkManager); | |
30 TestRunner.securityOriginManager = target.model(SDK.SecurityOriginManager); | |
31 TestRunner.resourceTreeModel = target.model(SDK.ResourceTreeModel); | |
32 TestRunner.debuggerModel = target.model(SDK.DebuggerModel); | |
33 TestRunner.runtimeModel = target.model(SDK.RuntimeModel); | |
34 TestRunner.domModel = target.model(SDK.DOMModel); | |
35 TestRunner.domDebuggerModel = target.model(SDK.DOMDebuggerModel); | |
36 TestRunner.cssModel = target.model(SDK.CSSModel); | |
37 TestRunner.cpuProfilerModel = target.model(SDK.CPUProfilerModel); | |
38 TestRunner.serviceWorkerManager = target.model(SDK.ServiceWorkerManager); | |
39 TestRunner.tracingManager = target.model(SDK.TracingManager); | |
40 TestRunner.mainTarget = target; | |
41 TestRunner.consoleModel = ConsoleModel.consoleModel; | |
42 TestRunner.networkLog = NetworkLog.networkLog; | |
43 }; | |
44 | |
45 /** | |
46 * @param {string} code | |
47 * @param {!Function} callback | |
48 */ | |
49 TestRunner.evaluateInPage = async function(code, callback) { | |
50 var response = await TestRunner.RuntimeAgent.invoke_evaluate({expression: code , objectGroup: 'console'}); | |
51 if (!response[Protocol.Error]) { | |
52 TestRunner.safeWrap(callback)( | |
53 TestRunner.runtimeModel.createRemoteObject(response.result), response.ex ceptionDetails); | |
54 } | |
55 }; | |
56 | |
57 /** | |
58 * @param {string} code | |
59 * @return {!Promise<!SDK.RemoteObject>} | |
60 */ | |
61 TestRunner.evaluateInPagePromise = function(code) { | |
62 return new Promise(success => TestRunner.evaluateInPage(code, success)); | |
63 }; | |
64 | |
65 /** | |
66 * @param {!Function} callback | |
67 */ | |
68 TestRunner.deprecatedRunAfterPendingDispatches = function(callback) { | |
69 var targets = SDK.targetManager.targets(); | |
70 var promises = targets.map(target => new Promise(resolve => target._deprecated RunAfterPendingDispatches(resolve))); | |
71 Promise.all(promises).then(TestRunner.safeWrap(callback)); | |
72 }; | |
73 | |
74 (function() { | |
75 /** @type {boolean} */ | |
76 IntegrationTestRunner._startedTest = false; | |
77 | |
78 /** | |
79 * @implements {SDK.TargetManager.Observer} | |
80 */ | |
81 class TestObserver { | |
82 /** | |
83 * @param {!SDK.Target} target | |
84 * @override | |
85 */ | |
86 targetAdded(target) { | |
87 if (IntegrationTestRunner._startedTest) | |
88 return; | |
89 IntegrationTestRunner._startedTest = true; | |
90 self.runtime.loadModulePromise('integration_test_runner').then(() => { | |
dgozman
2017/06/15 21:16:48
We are already in this module.
chenwilliam
2017/06/19 18:33:29
Yep. removed.
| |
91 IntegrationTestRunner._setupTestHelpers(target); | |
92 TestRunner.executeTestScript(); | |
93 }); | |
94 } | |
95 | |
96 /** | |
97 * @param {!SDK.Target} target | |
98 * @override | |
99 */ | |
100 targetRemoved(target) { | |
101 } | |
102 } | |
103 SDK.targetManager.observeTargets(new TestObserver()); | |
104 })(); | |
OLD | NEW |