summaryrefslogtreecommitdiffstats
path: root/chrome/test/base/ui_test_utils.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/test/base/ui_test_utils.cc')
-rw-r--r--chrome/test/base/ui_test_utils.cc17
1 files changed, 17 insertions, 0 deletions
diff --git a/chrome/test/base/ui_test_utils.cc b/chrome/test/base/ui_test_utils.cc
index 6b7b318..441c81e 100644
--- a/chrome/test/base/ui_test_utils.cc
+++ b/chrome/test/base/ui_test_utils.cc
@@ -976,6 +976,23 @@ void TitleWatcher::AlsoWaitForTitle(const string16& expected_title) {
TitleWatcher::~TitleWatcher() {
}
+BrowserAddedObserver::BrowserAddedObserver()
+ : notification_observer_(
+ chrome::NOTIFICATION_BROWSER_OPENED,
+ content::NotificationService::AllSources()) {
+ original_browsers_.insert(BrowserList::begin(), BrowserList::end());
+}
+
+BrowserAddedObserver::~BrowserAddedObserver() {
+}
+
+Browser* BrowserAddedObserver::WaitForSingleNewBrowser() {
+ notification_observer_.Wait();
+ // Ensure that only a single new browser has appeared.
+ EXPECT_EQ(original_browsers_.size() + 1, BrowserList::size());
+ return GetBrowserNotInSet(original_browsers_);
+}
+
const string16& TitleWatcher::WaitAndGetTitle() {
if (expected_title_observed_)
return observed_title_;