OLD | NEW |
---|---|
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/test/chromedriver/session_commands.h" | 5 #include "chrome/test/chromedriver/session_commands.h" |
6 | 6 |
7 #include <list> | 7 #include <list> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/callback.h" | 10 #include "base/callback.h" |
(...skipping 10 matching lines...) Expand all Loading... | |
21 #include "chrome/test/chromedriver/chrome/chrome.h" | 21 #include "chrome/test/chromedriver/chrome/chrome.h" |
22 #include "chrome/test/chromedriver/chrome/chrome_android_impl.h" | 22 #include "chrome/test/chromedriver/chrome/chrome_android_impl.h" |
23 #include "chrome/test/chromedriver/chrome/chrome_desktop_impl.h" | 23 #include "chrome/test/chromedriver/chrome/chrome_desktop_impl.h" |
24 #include "chrome/test/chromedriver/chrome/device_manager.h" | 24 #include "chrome/test/chromedriver/chrome/device_manager.h" |
25 #include "chrome/test/chromedriver/chrome/devtools_event_listener.h" | 25 #include "chrome/test/chromedriver/chrome/devtools_event_listener.h" |
26 #include "chrome/test/chromedriver/chrome/geoposition.h" | 26 #include "chrome/test/chromedriver/chrome/geoposition.h" |
27 #include "chrome/test/chromedriver/chrome/status.h" | 27 #include "chrome/test/chromedriver/chrome/status.h" |
28 #include "chrome/test/chromedriver/chrome/version.h" | 28 #include "chrome/test/chromedriver/chrome/version.h" |
29 #include "chrome/test/chromedriver/chrome/web_view.h" | 29 #include "chrome/test/chromedriver/chrome/web_view.h" |
30 #include "chrome/test/chromedriver/chrome_launcher.h" | 30 #include "chrome/test/chromedriver/chrome_launcher.h" |
31 #include "chrome/test/chromedriver/command_listener.h" | |
31 #include "chrome/test/chromedriver/logging.h" | 32 #include "chrome/test/chromedriver/logging.h" |
32 #include "chrome/test/chromedriver/net/url_request_context_getter.h" | 33 #include "chrome/test/chromedriver/net/url_request_context_getter.h" |
33 #include "chrome/test/chromedriver/session.h" | 34 #include "chrome/test/chromedriver/session.h" |
34 #include "chrome/test/chromedriver/util.h" | 35 #include "chrome/test/chromedriver/util.h" |
35 #include "chrome/test/chromedriver/version.h" | 36 #include "chrome/test/chromedriver/version.h" |
36 | 37 |
37 namespace { | 38 namespace { |
38 | 39 |
39 const char kWindowHandlePrefix[] = "CDwindow-"; | 40 const char kWindowHandlePrefix[] = "CDwindow-"; |
40 | 41 |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
117 if (status.IsError()) | 118 if (status.IsError()) |
118 return status; | 119 return status; |
119 | 120 |
120 Log::Level driver_level = Log::kWarning; | 121 Log::Level driver_level = Log::kWarning; |
121 if (capabilities.logging_prefs.count(WebDriverLog::kDriverType)) | 122 if (capabilities.logging_prefs.count(WebDriverLog::kDriverType)) |
122 driver_level = capabilities.logging_prefs[WebDriverLog::kDriverType]; | 123 driver_level = capabilities.logging_prefs[WebDriverLog::kDriverType]; |
123 session->driver_log->set_min_level(driver_level); | 124 session->driver_log->set_min_level(driver_level); |
124 | 125 |
125 // Create Log's and DevToolsEventListener's for ones that are DevTools-based. | 126 // Create Log's and DevToolsEventListener's for ones that are DevTools-based. |
126 // Session will own the Log's, Chrome will own the listeners. | 127 // Session will own the Log's, Chrome will own the listeners. |
128 // Also create CommandListeners for the appropriate logs. | |
127 ScopedVector<DevToolsEventListener> devtools_event_listeners; | 129 ScopedVector<DevToolsEventListener> devtools_event_listeners; |
130 std::list<CommandListener*> command_listeners; | |
stgao
2014/06/27 16:48:25
Is it possible to use ScopedVector here and assign
johnmoore
2014/06/27 21:58:03
Done.
| |
128 status = CreateLogs(capabilities, | 131 status = CreateLogs(capabilities, |
129 &session->devtools_logs, | 132 &session->devtools_logs, |
130 &devtools_event_listeners); | 133 &devtools_event_listeners, &command_listeners); |
131 if (status.IsError()) | 134 if (status.IsError()) |
132 return status; | 135 return status; |
133 | 136 |
137 // session will own the CommandListeners after they are added. | |
138 for (std::list<CommandListener*>::const_iterator it = | |
139 command_listeners.begin(); | |
140 it != command_listeners.end(); | |
141 ++it) { | |
142 session->AddListener(*it); | |
143 } | |
144 | |
134 status = LaunchChrome(bound_params.context_getter.get(), | 145 status = LaunchChrome(bound_params.context_getter.get(), |
135 bound_params.socket_factory, | 146 bound_params.socket_factory, |
136 bound_params.device_manager, | 147 bound_params.device_manager, |
137 bound_params.port_server, | 148 bound_params.port_server, |
138 bound_params.port_manager, | 149 bound_params.port_manager, |
139 capabilities, | 150 capabilities, |
140 devtools_event_listeners, | 151 devtools_event_listeners, |
141 &session->chrome); | 152 &session->chrome); |
142 if (status.IsError()) | 153 if (status.IsError()) |
143 return status; | 154 return status; |
(...skipping 501 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
645 Status ExecuteSetAutoReporting( | 656 Status ExecuteSetAutoReporting( |
646 Session* session, | 657 Session* session, |
647 const base::DictionaryValue& params, | 658 const base::DictionaryValue& params, |
648 scoped_ptr<base::Value>* value) { | 659 scoped_ptr<base::Value>* value) { |
649 bool enabled; | 660 bool enabled; |
650 if (!params.GetBoolean("enabled", &enabled)) | 661 if (!params.GetBoolean("enabled", &enabled)) |
651 return Status(kUnknownError, "missing parameter 'enabled'"); | 662 return Status(kUnknownError, "missing parameter 'enabled'"); |
652 session->auto_reporting_enabled = enabled; | 663 session->auto_reporting_enabled = enabled; |
653 return Status(kOk); | 664 return Status(kOk); |
654 } | 665 } |
OLD | NEW |