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

Side by Side Diff: chrome/browser/ui/cocoa/one_click_signin_bubble_controller_unittest.mm

Issue 803963005: Fix WeakPtrFactory member in OneClickSigninBubbleControllerTest (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 11 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 unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #import "chrome/browser/ui/cocoa/one_click_signin_bubble_controller.h" 5 #import "chrome/browser/ui/cocoa/one_click_signin_bubble_controller.h"
6 6
7 #import <Cocoa/Cocoa.h> 7 #import <Cocoa/Cocoa.h>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
11 #import "base/mac/scoped_nsobject.h" 11 #import "base/mac/scoped_nsobject.h"
12 #include "base/memory/weak_ptr.h" 12 #include "base/memory/weak_ptr.h"
13 #import "chrome/browser/ui/cocoa/browser_window_cocoa.h" 13 #import "chrome/browser/ui/cocoa/browser_window_cocoa.h"
14 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" 14 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h"
15 #import "chrome/browser/ui/cocoa/one_click_signin_view_controller.h" 15 #import "chrome/browser/ui/cocoa/one_click_signin_view_controller.h"
16 #include "chrome/browser/ui/sync/one_click_signin_sync_starter.h" 16 #include "chrome/browser/ui/sync/one_click_signin_sync_starter.h"
17 #include "testing/gmock/include/gmock/gmock.h" 17 #include "testing/gmock/include/gmock/gmock.h"
18 #include "testing/gtest/include/gtest/gtest.h" 18 #include "testing/gtest/include/gtest/gtest.h"
19 #import "testing/gtest_mac.h" 19 #import "testing/gtest_mac.h"
20 20
21 namespace { 21 namespace {
22 22
23 using ::testing::_; 23 using ::testing::_;
24 24
25 class OneClickSigninBubbleControllerTest : public CocoaProfileTest { 25 class OneClickSigninBubbleControllerTest : public CocoaProfileTest {
26 public: 26 public:
27 OneClickSigninBubbleControllerTest() 27 OneClickSigninBubbleControllerTest()
28 : weak_ptr_factory_(this), 28 : weak_ptr_factory_(this) {
29 start_sync_callback_( 29 start_sync_callback_ =
30 base::Bind(&OneClickSigninBubbleControllerTest::OnStartSync, 30 base::Bind(&OneClickSigninBubbleControllerTest::OnStartSync,
31 weak_ptr_factory_.GetWeakPtr())) {} 31 weak_ptr_factory_.GetWeakPtr());
32 }
32 33
33 virtual void SetUp() override { 34 virtual void SetUp() override {
34 CocoaProfileTest::SetUp(); 35 CocoaProfileTest::SetUp();
35 BrowserWindowCocoa* browser_window = 36 BrowserWindowCocoa* browser_window =
36 static_cast<BrowserWindowCocoa*>(browser()->window()); 37 static_cast<BrowserWindowCocoa*>(browser()->window());
37 controller_.reset([[OneClickSigninBubbleController alloc] 38 controller_.reset([[OneClickSigninBubbleController alloc]
38 initWithBrowserWindowController:browser_window->cocoa_controller() 39 initWithBrowserWindowController:browser_window->cocoa_controller()
39 webContents:nil 40 webContents:nil
40 errorMessage:nil 41 errorMessage:nil
41 callback:start_sync_callback_]); 42 callback:start_sync_callback_]);
42 [controller_ showWindow:nil]; 43 [controller_ showWindow:nil];
43 EXPECT_NSEQ(@"OneClickSigninBubble", 44 EXPECT_NSEQ(@"OneClickSigninBubble",
44 [[controller_ viewController] nibName]); 45 [[controller_ viewController] nibName]);
45 } 46 }
46 47
47 virtual void TearDown() override { 48 virtual void TearDown() override {
48 controller_.reset(); 49 controller_.reset();
49 CocoaProfileTest::TearDown(); 50 CocoaProfileTest::TearDown();
50 } 51 }
51 52
52 MOCK_METHOD1(OnStartSync, void(OneClickSigninSyncStarter::StartSyncMode)); 53 MOCK_METHOD1(OnStartSync, void(OneClickSigninSyncStarter::StartSyncMode));
53 54
54 protected: 55 protected:
55 base::WeakPtrFactory<OneClickSigninBubbleControllerTest> weak_ptr_factory_;
56 BrowserWindow::StartSyncCallback start_sync_callback_; 56 BrowserWindow::StartSyncCallback start_sync_callback_;
57 base::scoped_nsobject<OneClickSigninBubbleController> controller_; 57 base::scoped_nsobject<OneClickSigninBubbleController> controller_;
58 58
59 private: 59 private:
60 base::WeakPtrFactory<OneClickSigninBubbleControllerTest> weak_ptr_factory_;
61
60 DISALLOW_COPY_AND_ASSIGN(OneClickSigninBubbleControllerTest); 62 DISALLOW_COPY_AND_ASSIGN(OneClickSigninBubbleControllerTest);
61 }; 63 };
62 64
63 // Test that the bubble does not sync if the OK button is clicked. 65 // Test that the bubble does not sync if the OK button is clicked.
64 TEST_F(OneClickSigninBubbleControllerTest, OK) { 66 TEST_F(OneClickSigninBubbleControllerTest, OK) {
65 EXPECT_CALL(*this, OnStartSync( 67 EXPECT_CALL(*this, OnStartSync(
66 OneClickSigninSyncStarter::SYNC_WITH_DEFAULT_SETTINGS)).Times(0); 68 OneClickSigninSyncStarter::SYNC_WITH_DEFAULT_SETTINGS)).Times(0);
67 [[controller_ viewController] ok:nil]; 69 [[controller_ viewController] ok:nil];
68 } 70 }
69 71
70 // Test that the bubble does not sync if the Undo button 72 // Test that the bubble does not sync if the Undo button
71 // is clicked. Callback should be called to abort the sync. 73 // is clicked. Callback should be called to abort the sync.
72 TEST_F(OneClickSigninBubbleControllerTest, Undo) { 74 TEST_F(OneClickSigninBubbleControllerTest, Undo) {
73 EXPECT_CALL(*this, OnStartSync( 75 EXPECT_CALL(*this, OnStartSync(
74 OneClickSigninSyncStarter::UNDO_SYNC)).Times(0); 76 OneClickSigninSyncStarter::UNDO_SYNC)).Times(0);
75 [[controller_ viewController] onClickUndo:nil]; 77 [[controller_ viewController] onClickUndo:nil];
76 } 78 }
77 79
78 // Test that the bubble does not sync if the bubble is closed. 80 // Test that the bubble does not sync if the bubble is closed.
79 TEST_F(OneClickSigninBubbleControllerTest, Close) { 81 TEST_F(OneClickSigninBubbleControllerTest, Close) {
80 EXPECT_CALL(*this, OnStartSync( 82 EXPECT_CALL(*this, OnStartSync(
81 OneClickSigninSyncStarter::SYNC_WITH_DEFAULT_SETTINGS)).Times(0); 83 OneClickSigninSyncStarter::SYNC_WITH_DEFAULT_SETTINGS)).Times(0);
82 [controller_ close]; 84 [controller_ close];
83 } 85 }
84 86
85 } // namespace 87 } // namespace
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698