Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(374)

Side by Side Diff: chrome/test/ui/ui_test.h

Issue 14585015: Recommit the generate profile patch (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Load the browser dll manually on Windows. Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/test/perf/startup_test.cc ('k') | chrome/test/ui/ui_test.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #ifndef CHROME_TEST_UI_UI_TEST_H_ 5 #ifndef CHROME_TEST_UI_UI_TEST_H_
6 #define CHROME_TEST_UI_UI_TEST_H_ 6 #define CHROME_TEST_UI_UI_TEST_H_
7 7
8 // This file provides a common base for running UI unit tests, which operate 8 // This file provides a common base for running UI unit tests, which operate
9 // the entire browser application in a separate process for holistic 9 // the entire browser application in a separate process for holistic
10 // functional testing. 10 // functional testing.
(...skipping 27 matching lines...) Expand all
38 class FilePath; 38 class FilePath;
39 } 39 }
40 40
41 // Base class for UI Tests. This implements the core of the functions. 41 // Base class for UI Tests. This implements the core of the functions.
42 // This base class decouples all automation functionality from testing 42 // This base class decouples all automation functionality from testing
43 // infrastructure, for use without gtest. 43 // infrastructure, for use without gtest.
44 // If using gtest, you probably want to inherit from UITest (declared below) 44 // If using gtest, you probably want to inherit from UITest (declared below)
45 // rather than UITestBase. 45 // rather than UITestBase.
46 class UITestBase { 46 class UITestBase {
47 public: 47 public:
48 // Profile theme type choices.
49 enum ProfileType {
50 DEFAULT_THEME = 0,
51 COMPLEX_THEME = 1,
52 };
53
54 // ********* Utility functions ********* 48 // ********* Utility functions *********
55 49
56 // Launches the browser only. 50 // Launches the browser only.
57 void LaunchBrowser(); 51 void LaunchBrowser();
58 52
59 // Launches the browser and IPC testing connection in server mode. 53 // Launches the browser and IPC testing connection in server mode.
60 void LaunchBrowserAndServer(); 54 void LaunchBrowserAndServer();
61 55
62 // Launches the IPC testing connection in client mode, 56 // Launches the IPC testing connection in client mode,
63 // which then attempts to connect to a browser. 57 // which then attempts to connect to a browser.
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 // Closes the specified browser. Returns true if the browser was closed. 135 // Closes the specified browser. Returns true if the browser was closed.
142 // This call is blocking. |application_closed| is set to true if this was 136 // This call is blocking. |application_closed| is set to true if this was
143 // the last browser window (and therefore as a result of it closing the 137 // the last browser window (and therefore as a result of it closing the
144 // browser process terminated). Note that in that case this method returns 138 // browser process terminated). Note that in that case this method returns
145 // after the browser process has terminated. 139 // after the browser process has terminated.
146 bool CloseBrowser(BrowserProxy* browser, bool* application_closed) const; 140 bool CloseBrowser(BrowserProxy* browser, bool* application_closed) const;
147 141
148 // Gets the executable file path of the Chrome browser process. 142 // Gets the executable file path of the Chrome browser process.
149 const base::FilePath::CharType* GetExecutablePath(); 143 const base::FilePath::CharType* GetExecutablePath();
150 144
151 // Returns the directory name where the "typical" user data is that we use
152 // for testing.
153 static base::FilePath ComputeTypicalUserDataSource(ProfileType profile_type);
154
155 // Return the user data directory being used by the browser instance in 145 // Return the user data directory being used by the browser instance in
156 // UITest::SetUp(). 146 // UITest::SetUp().
157 base::FilePath user_data_dir() const { 147 base::FilePath user_data_dir() const {
158 return launcher_->user_data_dir(); 148 return launcher_->user_data_dir();
159 } 149 }
160 150
161 // Called by some tests that wish to have a base profile to start from. This 151 // Called by some tests that wish to have a base profile to start from. This
162 // "user data directory" (containing one or more profiles) will be recursively 152 // "user data directory" (containing one or more profiles) will be recursively
163 // copied into the user data directory for the test and the files will be 153 // copied into the user data directory for the test and the files will be
164 // evicted from the OS cache. To start with a blank profile, supply an empty 154 // evicted from the OS cache. To start with a blank profile, supply an empty
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 // Should we supply the testing channel id 311 // Should we supply the testing channel id
322 // on the command line? Default is true. 312 // on the command line? Default is true.
323 bool include_testing_id_; 313 bool include_testing_id_;
324 314
325 // Enable file cookies, default is true. 315 // Enable file cookies, default is true.
326 bool enable_file_cookies_; 316 bool enable_file_cookies_;
327 317
328 // Launches browser and AutomationProxy. 318 // Launches browser and AutomationProxy.
329 scoped_ptr<ProxyLauncher> launcher_; 319 scoped_ptr<ProxyLauncher> launcher_;
330 320
331 // Are we using a profile with a complex theme?
332 ProfileType profile_type_;
333
334 // PID file for websocket server. 321 // PID file for websocket server.
335 base::FilePath websocket_pid_file_; 322 base::FilePath websocket_pid_file_;
336 323
337 private: 324 private:
338 // Time the test was started (so we can check for new crash dumps) 325 // Time the test was started (so we can check for new crash dumps)
339 base::Time test_start_time_; 326 base::Time test_start_time_;
340 }; 327 };
341 328
342 class UITest : public UITestBase, public PlatformTest { 329 class UITest : public UITestBase, public PlatformTest {
343 protected: 330 protected:
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
429 #ifdef UNIT_TEST 416 #ifdef UNIT_TEST
430 std::ostream& operator<<(std::ostream& out, const std::wstring& wstr); 417 std::ostream& operator<<(std::ostream& out, const std::wstring& wstr);
431 418
432 template<typename T> 419 template<typename T>
433 std::ostream& operator<<(std::ostream& out, const ::scoped_ptr<T>& ptr) { 420 std::ostream& operator<<(std::ostream& out, const ::scoped_ptr<T>& ptr) {
434 return out << ptr.get(); 421 return out << ptr.get();
435 } 422 }
436 #endif // UNIT_TEST 423 #endif // UNIT_TEST
437 424
438 #endif // CHROME_TEST_UI_UI_TEST_H_ 425 #endif // CHROME_TEST_UI_UI_TEST_H_
OLDNEW
« no previous file with comments | « chrome/test/perf/startup_test.cc ('k') | chrome/test/ui/ui_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698