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

Unified Diff: chrome/browser/ui/cocoa/one_click_signin_bubble_controller_unittest.mm

Issue 10332185: Update behavior of one-click infobar to remove modal dialog, add "undo". (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 8 years, 7 months 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/cocoa/one_click_signin_bubble_controller_unittest.mm
diff --git a/chrome/browser/ui/cocoa/one_click_signin_bubble_controller_unittest.mm b/chrome/browser/ui/cocoa/one_click_signin_bubble_controller_unittest.mm
index 93f7ed104d0ae278cab94f45e206f487eb69398d..9a235231b9523c71499e320809e8544fb4ffca14 100644
--- a/chrome/browser/ui/cocoa/one_click_signin_bubble_controller_unittest.mm
+++ b/chrome/browser/ui/cocoa/one_click_signin_bubble_controller_unittest.mm
@@ -12,6 +12,7 @@
#include "base/memory/weak_ptr.h"
#import "chrome/browser/ui/cocoa/browser_window_cocoa.h"
#include "chrome/browser/ui/cocoa/cocoa_profile_test.h"
+#include "chrome/browser/ui/sync/one_click_signin_sync_starter.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#import "testing/gtest_mac.h"
@@ -22,11 +23,8 @@ class OneClickSigninBubbleControllerTest : public CocoaProfileTest {
public:
OneClickSigninBubbleControllerTest()
: weak_ptr_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)),
- learn_more_callback_(
- base::Bind(&OneClickSigninBubbleControllerTest::OnLearnMore,
- weak_ptr_factory_.GetWeakPtr())),
- advanced_callback_(
- base::Bind(&OneClickSigninBubbleControllerTest::OnAdvanced,
+ start_sync_callback_(
+ base::Bind(&OneClickSigninBubbleControllerTest::OnStartSync,
weak_ptr_factory_.GetWeakPtr())) {}
virtual void SetUp() {
@@ -36,8 +34,7 @@ class OneClickSigninBubbleControllerTest : public CocoaProfileTest {
controller_.reset(
[[OneClickSigninBubbleController alloc]
initWithBrowserWindowController:browser_window->cocoa_controller()
- learnMoreCallback:learn_more_callback_
- advancedCallback:advanced_callback_]);
+ start_sync_callback:start_sync_callback_]);
}
virtual void TearDown() {
@@ -45,70 +42,43 @@ class OneClickSigninBubbleControllerTest : public CocoaProfileTest {
CocoaProfileTest::TearDown();
}
- MOCK_METHOD0(OnLearnMore, void());
- MOCK_METHOD0(OnAdvanced, void());
+ MOCK_METHOD1(OnStartSync, void(OneClickSigninSyncStarter::StartSyncMode));
protected:
base::WeakPtrFactory<OneClickSigninBubbleControllerTest> weak_ptr_factory_;
- base::Closure learn_more_callback_;
- base::Closure advanced_callback_;
+ BrowserWindow::StartSyncCallback start_sync_callback_;
scoped_nsobject<OneClickSigninBubbleController> controller_;
};
// Test that the dialog loads from its nib properly.
TEST_F(OneClickSigninBubbleControllerTest, NibLoad) {
- EXPECT_CALL(*this, OnLearnMore()).Times(0);
- EXPECT_CALL(*this, OnAdvanced()).Times(0);
+ EXPECT_CALL(*this, OnStartSync(testing::_)).Times(0);
// Force nib load.
[controller_ window];
EXPECT_NSEQ(@"OneClickSigninBubble", [controller_ windowNibName]);
}
-// Test that the dialog doesn't call any callback if the OK button is
-// clicked.
+// Test that the dialog calls the callback if the OK button is clicked.
TEST_F(OneClickSigninBubbleControllerTest, ShowAndOK) {
- EXPECT_CALL(*this, OnLearnMore()).Times(0);
- EXPECT_CALL(*this, OnAdvanced()).Times(0);
+ EXPECT_CALL(*this, OnStartSync(
+ OneClickSigninSyncStarter::SYNC_WITH_DEFAULT_SETTINGS)).Times(1);
[controller_ showWindow:nil];
[controller_.release() ok:nil];
}
-// Test that the learn more callback is run if its corresponding
+// TODO(akalin): Test that the dialog doesn't call the callback if the Undo
// button is clicked.
-TEST_F(OneClickSigninBubbleControllerTest, ShowAndClickLearnMore) {
- EXPECT_CALL(*this, OnLearnMore()).Times(1);
- EXPECT_CALL(*this, OnAdvanced()).Times(0);
-
- [controller_ showWindow:nil];
- [controller_ onClickLearnMoreLink:nil];
- [controller_.release() ok:nil];
-}
// Test that the advanced callback is run if its corresponding button
// is clicked.
TEST_F(OneClickSigninBubbleControllerTest, ShowAndClickAdvanced) {
- EXPECT_CALL(*this, OnLearnMore()).Times(0);
- EXPECT_CALL(*this, OnAdvanced()).Times(1);
+ EXPECT_CALL(*this, OnStartSync(
+ OneClickSigninSyncStarter::CONFIGURE_SYNC_FIRST)).Times(1);
[controller_ showWindow:nil];
- [controller_ onClickAdvancedLink:nil];
- [controller_.release() ok:nil];
-}
-
-// Test that the callbacks can be run multiple times.
-TEST_F(OneClickSigninBubbleControllerTest, ShowAndClickMultiple) {
- EXPECT_CALL(*this, OnLearnMore()).Times(3);
- EXPECT_CALL(*this, OnAdvanced()).Times(4);
-
- [controller_ showWindow:nil];
- for (int i = 0; i < 3; ++i) {
- [controller_ onClickLearnMoreLink:nil];
- [controller_ onClickAdvancedLink:nil];
- }
- [controller_ onClickAdvancedLink:nil];
- [controller_.release() ok:nil];
+ [controller_.release() onClickAdvancedLink:nil];
}
} // namespace
« no previous file with comments | « chrome/browser/ui/cocoa/one_click_signin_bubble_controller.mm ('k') | chrome/browser/ui/gtk/browser_window_gtk.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698