| Index: chrome/browser/ui/views/bookmarks/bookmark_bar_view_test.cc
|
| ===================================================================
|
| --- chrome/browser/ui/views/bookmarks/bookmark_bar_view_test.cc (revision 95527)
|
| +++ chrome/browser/ui/views/bookmarks/bookmark_bar_view_test.cc (working copy)
|
| @@ -11,12 +11,14 @@
|
| #include "chrome/browser/bookmarks/bookmark_utils.h"
|
| #include "chrome/browser/prefs/pref_service.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| +#include "chrome/browser/ui/browser.h"
|
| #include "chrome/browser/ui/views/bookmarks/bookmark_bar_view.h"
|
| #include "chrome/common/chrome_notification_types.h"
|
| #include "chrome/common/pref_names.h"
|
| #include "chrome/test/base/ui_test_utils.h"
|
| #include "chrome/test/base/testing_profile.h"
|
| #include "chrome/test/base/view_event_test_base.h"
|
| +#include "chrome/test/testing_browser_process.h"
|
| #include "content/browser/tab_contents/page_navigator.h"
|
| #include "content/common/notification_service.h"
|
| #include "grit/generated_resources.h"
|
| @@ -180,10 +182,12 @@
|
| profile_->BlockUntilBookmarkModelLoaded();
|
| profile_->GetPrefs()->SetBoolean(prefs::kShowBookmarkBar, true);
|
|
|
| + browser_.reset(new Browser(Browser::TYPE_TABBED, profile_.get()));
|
| +
|
| model_ = profile_->GetBookmarkModel();
|
| model_->ClearStore();
|
|
|
| - bb_view_ = new BookmarkBarView(profile_.get(), NULL);
|
| + bb_view_.reset(new BookmarkBarView(browser_.get()));
|
| bb_view_->SetPageNavigator(&navigator_);
|
|
|
| AddTestData(CreateBigMenu());
|
| @@ -200,7 +204,7 @@
|
| // we brute force search for a size that triggers the overflow button.
|
| views::View tmp_parent;
|
|
|
| - tmp_parent.AddChildView(bb_view_);
|
| + tmp_parent.AddChildView(bb_view_.get());
|
|
|
| bb_view_pref_ = bb_view_->GetPreferredSize();
|
| bb_view_pref_.set_width(1000);
|
| @@ -211,12 +215,21 @@
|
| bb_view_->Layout();
|
| }
|
|
|
| - tmp_parent.RemoveChildView(bb_view_);
|
| + tmp_parent.RemoveChildView(bb_view_.get());
|
|
|
| ViewEventTestBase::SetUp();
|
| }
|
|
|
| virtual void TearDown() {
|
| + // Destroy everything, then run the message loop to ensure we delete all
|
| + // Tasks and fully shut down.
|
| + browser_->CloseAllTabs();
|
| + bb_view_.reset();
|
| + browser_.reset();
|
| + profile_.reset();
|
| + MessageLoop::current()->PostTask(FROM_HERE, new MessageLoop::QuitTask);
|
| + MessageLoop::current()->Run();
|
| +
|
| ViewEventTestBase::TearDown();
|
| BookmarkBarView::testing_ = false;
|
| views::ViewsDelegate::views_delegate = NULL;
|
| @@ -228,7 +241,7 @@
|
| }
|
|
|
| virtual views::View* CreateContentsView() {
|
| - return bb_view_;
|
| + return bb_view_.get();
|
| }
|
|
|
| virtual gfx::Size GetPreferredSize() { return bb_view_pref_; }
|
| @@ -241,7 +254,7 @@
|
| virtual bool CreateBigMenu() { return false; }
|
|
|
| BookmarkModel* model_;
|
| - BookmarkBarView* bb_view_;
|
| + scoped_ptr<BookmarkBarView> bb_view_;
|
| TestingPageNavigator navigator_;
|
|
|
| private:
|
| @@ -275,7 +288,9 @@
|
| }
|
|
|
| gfx::Size bb_view_pref_;
|
| + ScopedTestingBrowserProcess testing_browser_process_;
|
| scoped_ptr<TestingProfile> profile_;
|
| + scoped_ptr<Browser> browser_;
|
| BrowserThread ui_thread_;
|
| BrowserThread file_thread_;
|
| ViewsDelegateImpl views_delegate_;
|
| @@ -358,7 +373,7 @@
|
| // true. If that changes, this code will need to find another empty space
|
| // to press the mouse on.
|
| gfx::Point mouse_loc;
|
| - views::View::ConvertPointToScreen(bb_view_, &mouse_loc);
|
| + views::View::ConvertPointToScreen(bb_view_.get(), &mouse_loc);
|
| ui_controls::SendMouseMove(0, 0);
|
| ui_controls::SendMouseEventsNotifyWhenDone(
|
| ui_controls::LEFT, ui_controls::DOWN | ui_controls::UP,
|
| @@ -1043,7 +1058,7 @@
|
|
|
| // Now click on empty space.
|
| gfx::Point mouse_loc;
|
| - views::View::ConvertPointToScreen(bb_view_, &mouse_loc);
|
| + views::View::ConvertPointToScreen(bb_view_.get(), &mouse_loc);
|
| ui_controls::SendMouseMove(mouse_loc.x(), mouse_loc.y());
|
| ui_controls::SendMouseEventsNotifyWhenDone(
|
| ui_controls::LEFT, ui_controls::UP | ui_controls::DOWN,
|
|
|