Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / chrome / test / chromedriver / chrome_launcher.h
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
3 // found in the LICENSE file.
4
5 #ifndef CHROME_TEST_CHROMEDRIVER_CHROME_LAUNCHER_H_
6 #define CHROME_TEST_CHROMEDRIVER_CHROME_LAUNCHER_H_
7
8 #include <string>
9 #include <vector>
10
11 #include "base/files/file_path.h"
12 #include "base/memory/scoped_ptr.h"
13 #include "base/memory/scoped_vector.h"
14 #include "chrome/test/chromedriver/capabilities.h"
15 #include "chrome/test/chromedriver/net/sync_websocket_factory.h"
16
17 class CommandLine;
18 class DevToolsEventListener;
19
20 namespace base {
21 class DictionaryValue;
22 class FilePath;
23 }
24
25 class Chrome;
26 class DeviceManager;
27 class PortManager;
28 class PortServer;
29 class Status;
30 class URLRequestContextGetter;
31
32 Status LaunchChrome(
33     URLRequestContextGetter* context_getter,
34     const SyncWebSocketFactory& socket_factory,
35     DeviceManager* device_manager,
36     PortServer* port_server,
37     PortManager* port_manager,
38     const Capabilities& capabilities,
39     ScopedVector<DevToolsEventListener>& devtools_event_listeners,
40     scoped_ptr<Chrome>* chrome);
41
42 namespace internal {
43 Status ProcessExtensions(const std::vector<std::string>& extensions,
44                          const base::FilePath& temp_dir,
45                          bool include_automation_extension,
46                          Switches* switches,
47                          std::vector<std::string>* bg_pages);
48 Status PrepareUserDataDir(
49     const base::FilePath& user_data_dir,
50     const base::DictionaryValue* custom_prefs,
51     const base::DictionaryValue* custom_local_state);
52 }  // namespace internal
53
54 #endif  // CHROME_TEST_CHROMEDRIVER_CHROME_LAUNCHER_H_