Chromium Code Reviews| Index: chrome/test/base/ui_test_utils.cc |
| diff --git a/chrome/test/base/ui_test_utils.cc b/chrome/test/base/ui_test_utils.cc |
| index 64f5115c8f5bf7e9619e68b34cf01ec3d02e16d9..f68f95ccfb0497e80e820300c97efee6efab2196 100644 |
| --- a/chrome/test/base/ui_test_utils.cc |
| +++ b/chrome/test/base/ui_test_utils.cc |
| @@ -49,6 +49,7 @@ |
| #include "components/app_modal_dialogs/app_modal_dialog.h" |
| #include "components/app_modal_dialogs/app_modal_dialog_queue.h" |
| #include "components/bookmarks/browser/bookmark_model.h" |
| +#include "components/history/core/browser/history_service_observer.h" |
| #include "components/search_engines/template_url_service.h" |
| #include "content/public/browser/dom_operation_notification_details.h" |
| #include "content/public/browser/download_item.h" |
| @@ -363,14 +364,6 @@ void WaitForTemplateURLServiceToLoad(TemplateURLService* service) { |
| ASSERT_TRUE(service->loaded()); |
| } |
| -void WaitForHistoryToLoad(HistoryService* history_service) { |
| - content::WindowedNotificationObserver history_loaded_observer( |
| - chrome::NOTIFICATION_HISTORY_LOADED, |
| - content::NotificationService::AllSources()); |
| - if (!history_service->BackendLoaded()) |
| - history_loaded_observer.Wait(); |
| -} |
| - |
| void DownloadURL(Browser* browser, const GURL& download_url) { |
| base::ScopedTempDir downloads_directory; |
| ASSERT_TRUE(downloads_directory.CreateUniqueTempDir()); |
| @@ -540,4 +533,32 @@ void HistoryEnumerator::HistoryQueryComplete( |
| quit_task.Run(); |
| } |
| +// Wait for HistoryService to load. |
| +class WaitHistoryLoadedObserver : public history::HistoryServiceObserver { |
| + public: |
| + explicit WaitHistoryLoadedObserver(content::MessageLoopRunner* runner) |
| + : runner_(runner) {} |
| + virtual ~WaitHistoryLoadedObserver() {} |
|
sdefresne
2014/10/30 17:37:04
style: remove virtual, add override
nshaik
2014/10/30 21:48:36
Done.
|
| + // history::HistoryServiceObserver: |
| + virtual void OnHistoryServiceLoaded(HistoryService* service) override { |
|
sdefresne
2014/10/30 17:37:04
style: remove virtual
nshaik
2014/10/30 21:48:36
Done.
|
| + runner_->Quit(); |
| + } |
| + |
| + private: |
| + // weak |
| + content::MessageLoopRunner* runner_; |
| +}; |
| + |
| +void WaitForHistoryToLoad(HistoryService* history_service) { |
| + if (!history_service->BackendLoaded()) { |
| + scoped_refptr<content::MessageLoopRunner> runner = |
| + new content::MessageLoopRunner; |
| + WaitHistoryLoadedObserver observer(runner.get()); |
| + ScopedObserver<HistoryService, history::HistoryServiceObserver> |
| + scoped_observer(&observer); |
| + scoped_observer.Add(history_service); |
| + runner->Run(); |
| + } |
| +} |
| + |
| } // namespace ui_test_utils |