Chromium Code Reviews| Index: chrome/browser/chromeos/login/update_screen_browsertest.cc |
| diff --git a/chrome/browser/chromeos/login/update_screen_browsertest.cc b/chrome/browser/chromeos/login/update_screen_browsertest.cc |
| index 9004b8ba7a4a07b7646d95a44182c66e0845e6c1..467b83da8880444cd8714cfb57ca985b49ac9bf9 100644 |
| --- a/chrome/browser/chromeos/login/update_screen_browsertest.cc |
| +++ b/chrome/browser/chromeos/login/update_screen_browsertest.cc |
| @@ -70,59 +70,54 @@ class UpdateScreenTest : public WizardInProcessBrowserTest { |
| .Times(AnyNumber()); |
| } |
| + virtual void SetUpOnMainThread() { |
| + mock_screen_observer_.reset(new MockScreenObserver()); |
| + ASSERT_TRUE(controller() != NULL); |
| + controller()->set_observer(mock_screen_observer_.get()); |
| + update_screen_ = controller()->GetUpdateScreen(); |
| + ASSERT_TRUE(update_screen_ != NULL); |
| + ASSERT_EQ(controller()->current_screen(), update_screen_); |
| + } |
| + |
| virtual void TearDownInProcessBrowserTestFixture() { |
| + controller()->set_observer(NULL); |
| cros_mock_->test_api()->SetUpdateLibrary(NULL, true); |
| WizardInProcessBrowserTest::TearDownInProcessBrowserTestFixture(); |
| } |
| + void UpdateStatusChanged() { |
| + static_cast<UpdateLibrary::Observer*>(update_screen_)-> |
|
whywhat
2011/05/20 09:29:51
Can't you call the method if you make the class a
altimofeev
2011/05/20 12:00:32
Not applicable anymore.
|
| + UpdateStatusChanged(mock_update_library_); |
| + } |
| + |
| MockLoginLibrary* mock_login_library_; |
| MockUpdateLibrary* mock_update_library_; |
| MockNetworkLibrary* mock_network_library_; |
| + scoped_ptr<MockScreenObserver> mock_screen_observer_; |
| + UpdateScreen* update_screen_; |
| + |
| private: |
| DISALLOW_COPY_AND_ASSIGN(UpdateScreenTest); |
| }; |
| IN_PROC_BROWSER_TEST_F(UpdateScreenTest, TestBasic) { |
| - ASSERT_TRUE(controller() != NULL); |
| - scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver()); |
| - controller()->set_observer(mock_screen_observer.get()); |
| - UpdateScreen* update_screen = controller()->GetUpdateScreen(); |
| - ASSERT_TRUE(update_screen != NULL); |
| - ASSERT_EQ(controller()->current_screen(), update_screen); |
| - UpdateView* update_view = update_screen->view(); |
| - ASSERT_TRUE(update_view != NULL); |
| - controller()->set_observer(NULL); |
| + ASSERT_TRUE(update_screen_->actor_.get() != NULL); |
| } |
| IN_PROC_BROWSER_TEST_F(UpdateScreenTest, TestNoUpdate) { |
| - ASSERT_TRUE(controller() != NULL); |
| - scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver()); |
| - controller()->set_observer(mock_screen_observer.get()); |
| - UpdateScreen* update_screen = controller()->GetUpdateScreen(); |
| - ASSERT_TRUE(update_screen != NULL); |
| - ASSERT_EQ(controller()->current_screen(), update_screen); |
| - |
| UpdateLibrary::Status status; |
| status.status = UPDATE_STATUS_IDLE; |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - EXPECT_CALL(*mock_screen_observer, OnExit(ScreenObserver::UPDATE_NOUPDATE)) |
| + EXPECT_CALL(*mock_screen_observer_, OnExit(ScreenObserver::UPDATE_NOUPDATE)) |
| .Times(1); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| - |
| - controller()->set_observer(NULL); |
| + UpdateStatusChanged(); |
| } |
| IN_PROC_BROWSER_TEST_F(UpdateScreenTest, TestUpdateAvailable) { |
| - ASSERT_TRUE(controller() != NULL); |
| - scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver()); |
| - controller()->set_observer(mock_screen_observer.get()); |
| - UpdateScreen* update_screen = controller()->GetUpdateScreen(); |
| - ASSERT_TRUE(update_screen != NULL); |
| - ASSERT_EQ(controller()->current_screen(), update_screen); |
| - update_screen->SetAllUpdatesCritical(true); |
| + update_screen_->SetAllUpdatesCritical(true); |
| UpdateLibrary::Status status; |
| @@ -131,38 +126,38 @@ IN_PROC_BROWSER_TEST_F(UpdateScreenTest, TestUpdateAvailable) { |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| + UpdateStatusChanged(); |
| status.status = UPDATE_STATUS_DOWNLOADING; |
| status.download_progress = 0.0; |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| + UpdateStatusChanged(); |
| status.download_progress = 0.5; |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| + UpdateStatusChanged(); |
| status.download_progress = 1.0; |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| + UpdateStatusChanged(); |
| status.status = UPDATE_STATUS_VERIFYING; |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| + UpdateStatusChanged(); |
| status.status = UPDATE_STATUS_FINALIZING; |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| + UpdateStatusChanged(); |
| status.status = UPDATE_STATUS_UPDATED_NEED_REBOOT; |
| EXPECT_CALL(*mock_update_library_, status()) |
| @@ -170,9 +165,7 @@ IN_PROC_BROWSER_TEST_F(UpdateScreenTest, TestUpdateAvailable) { |
| .WillRepeatedly(ReturnRef(status)); |
| EXPECT_CALL(*mock_update_library_, RebootAfterUpdate()) |
| .Times(1); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| - |
| - controller()->set_observer(NULL); |
| + UpdateStatusChanged(); |
| } |
| static void RequestUpdateCheckFail(UpdateCallback callback, void* userdata) { |
| @@ -180,18 +173,11 @@ static void RequestUpdateCheckFail(UpdateCallback callback, void* userdata) { |
| } |
| IN_PROC_BROWSER_TEST_F(UpdateScreenTest, TestErrorIssuingUpdateCheck) { |
| - ASSERT_TRUE(controller() != NULL); |
| - scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver()); |
| - controller()->set_observer(mock_screen_observer.get()); |
| - UpdateScreen* update_screen = controller()->GetUpdateScreen(); |
| - ASSERT_TRUE(update_screen != NULL); |
| - ASSERT_EQ(controller()->current_screen(), update_screen); |
| - |
| // First, cancel the update that is already in progress. |
| - EXPECT_CALL(*mock_screen_observer, |
| + EXPECT_CALL(*mock_screen_observer_, |
| OnExit(ScreenObserver::UPDATE_NOUPDATE)) |
| .Times(1); |
| - update_screen->CancelUpdate(); |
| + update_screen_->CancelUpdate(); |
| // Run UpdateScreen::StartUpdate() again, but CheckForUpdate() will fail |
| // issuing the update check this time. |
| @@ -202,62 +188,41 @@ IN_PROC_BROWSER_TEST_F(UpdateScreenTest, TestErrorIssuingUpdateCheck) { |
| EXPECT_CALL(*mock_update_library_, RequestUpdateCheck(_,_)) |
| .Times(1) |
| .WillOnce(Invoke(RequestUpdateCheckFail)); |
| - EXPECT_CALL(*mock_screen_observer, |
| + EXPECT_CALL(*mock_screen_observer_, |
| OnExit(ScreenObserver::UPDATE_ERROR_CHECKING_FOR_UPDATE)) |
| .Times(1); |
| - update_screen->StartUpdate(); |
| - |
| - controller()->set_observer(NULL); |
| + update_screen_->StartUpdate(); |
| } |
| IN_PROC_BROWSER_TEST_F(UpdateScreenTest, TestErrorCheckingForUpdate) { |
| - ASSERT_TRUE(controller() != NULL); |
| - scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver()); |
| - controller()->set_observer(mock_screen_observer.get()); |
| - UpdateScreen* update_screen = controller()->GetUpdateScreen(); |
| - ASSERT_TRUE(update_screen != NULL); |
| - ASSERT_EQ(controller()->current_screen(), update_screen); |
| - |
| UpdateLibrary::Status status; |
| status.status = UPDATE_STATUS_ERROR; |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - EXPECT_CALL(*mock_screen_observer, |
| + EXPECT_CALL(*mock_screen_observer_, |
| OnExit(ScreenObserver::UPDATE_ERROR_CHECKING_FOR_UPDATE)) |
| .Times(1); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| - |
| - controller()->set_observer(NULL); |
| + UpdateStatusChanged(); |
| } |
| IN_PROC_BROWSER_TEST_F(UpdateScreenTest, TestErrorUpdating) { |
| - ASSERT_TRUE(controller() != NULL); |
| - scoped_ptr<MockScreenObserver> mock_screen_observer(new MockScreenObserver()); |
| - controller()->set_observer(mock_screen_observer.get()); |
| - UpdateScreen* update_screen = controller()->GetUpdateScreen(); |
| - ASSERT_TRUE(update_screen != NULL); |
| - ASSERT_EQ(controller()->current_screen(), update_screen); |
| - |
| UpdateLibrary::Status status; |
| - |
| status.status = UPDATE_STATUS_UPDATE_AVAILABLE; |
| status.new_version = "latest and greatest"; |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| + UpdateStatusChanged(); |
| status.status = UPDATE_STATUS_ERROR; |
| EXPECT_CALL(*mock_update_library_, status()) |
| .Times(AtLeast(1)) |
| .WillRepeatedly(ReturnRef(status)); |
| - EXPECT_CALL(*mock_screen_observer, |
| + EXPECT_CALL(*mock_screen_observer_, |
| OnExit(ScreenObserver::UPDATE_ERROR_UPDATING)) |
| .Times(1); |
| - update_screen->UpdateStatusChanged(mock_update_library_); |
| - |
| - controller()->set_observer(NULL); |
| + UpdateStatusChanged(); |
| } |
| } // namespace chromeos |