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

Side by Side Diff: chrome/test/ui_test_utils.h

Issue 339009: GMocking Externaltab tests. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « chrome/test/automation/automation_proxy_uitest.cc ('k') | chrome/test/ui_test_utils.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) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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_TEST_UTILS_H_ 5 #ifndef CHROME_TEST_UI_TEST_UTILS_H_
6 #define CHROME_TEST_UI_TEST_UTILS_H_ 6 #define CHROME_TEST_UI_TEST_UTILS_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/string16.h" 11 #include "base/string16.h"
12 #include "chrome/browser/view_ids.h" 12 #include "chrome/browser/view_ids.h"
13 #include "chrome/common/notification_observer.h" 13 #include "chrome/common/notification_observer.h"
14 #include "chrome/common/notification_type.h" 14 #include "chrome/common/notification_type.h"
15 15
16 class AppModalDialog; 16 class AppModalDialog;
17 class Browser; 17 class Browser;
18 class DownloadManager; 18 class DownloadManager;
19 class GURL; 19 class GURL;
20 class MessageLoop;
20 class NavigationController; 21 class NavigationController;
21 class RenderViewHost; 22 class RenderViewHost;
22 class TabContents; 23 class TabContents;
23 class Value; 24 class Value;
24 25
25 // A collections of functions designed for use with InProcessBrowserTest. 26 // A collections of functions designed for use with InProcessBrowserTest.
26 namespace ui_test_utils { 27 namespace ui_test_utils {
27 28
28 // Turns on nestable tasks, runs the message loop, then resets nestable tasks 29 // Turns on nestable tasks, runs the message loop, then resets nestable tasks
29 // to what they were originally. Prefer this over MessageLoop::Run for in 30 // to what they were originally. Prefer this over MessageLoop::Run for in
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 129
129 // Simulates a mouse click on a View in the browser. 130 // Simulates a mouse click on a View in the browser.
130 void ClickOnView(const Browser* browser, ViewID vid); 131 void ClickOnView(const Browser* browser, ViewID vid);
131 132
132 // Register |observer| for the given |type| and run the message loop until 133 // Register |observer| for the given |type| and run the message loop until
133 // either the observer posts a quit task or we timeout. 134 // either the observer posts a quit task or we timeout.
134 void RegisterAndWait(NotificationType::Type type, 135 void RegisterAndWait(NotificationType::Type type,
135 NotificationObserver* observer, 136 NotificationObserver* observer,
136 int64 timeout_ms); 137 int64 timeout_ms);
137 138
139 // Run a message loop only for the specified amount of time.
140 class TimedMessageLoopRunner {
141 public:
142 // Create new MessageLoopForUI and attach to it.
143 TimedMessageLoopRunner();
144
145 // Attach to an existing message loop.
146 explicit TimedMessageLoopRunner(MessageLoop* loop)
147 : loop_(loop), owned_(false) {}
148
149 ~TimedMessageLoopRunner();
150
151 // Run the message loop for ms milliseconds.
152 void RunFor(int ms);
153
154 // Post Quit task to the message loop.
155 void Quit();
156
157 // Post delayed Quit task to the message loop.
158 void QuitAfter(int ms);
159
160 private:
161 MessageLoop* loop_;
162 bool owned_;
163
164 DISALLOW_COPY_AND_ASSIGN(TimedMessageLoopRunner);
165 };
166
138 } // namespace ui_test_utils 167 } // namespace ui_test_utils
139 168
140 #endif // CHROME_TEST_UI_TEST_UTILS_H_ 169 #endif // CHROME_TEST_UI_TEST_UTILS_H_
OLDNEW
« no previous file with comments | « chrome/test/automation/automation_proxy_uitest.cc ('k') | chrome/test/ui_test_utils.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698