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

Side by Side Diff: chrome/browser/ui/cocoa/wrench_menu/wrench_menu_controller_unittest.mm

Issue 367153005: Sync: Refactoring of DEVICE_INFO syncable type - Part 1 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed scoped_ptr issue in ProfileSyncService constructor Created 6 years, 5 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
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 #include "base/command_line.h" 5 #include "base/command_line.h"
6 #include "base/mac/scoped_nsobject.h" 6 #include "base/mac/scoped_nsobject.h"
7 #include "base/strings/sys_string_conversions.h" 7 #include "base/strings/sys_string_conversions.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "chrome/app/chrome_command_ids.h" 9 #include "chrome/app/chrome_command_ids.h"
10 #include "chrome/browser/sync/glue/device_info.h" 10 #include "chrome/browser/sync/glue/device_info.h"
11 #include "chrome/browser/sync/glue/local_device_info_provider_mock.h"
11 #include "chrome/browser/sync/profile_sync_service_factory.h" 12 #include "chrome/browser/sync/profile_sync_service_factory.h"
12 #include "chrome/browser/sync/sessions/sessions_sync_manager.h" 13 #include "chrome/browser/sync/sessions/sessions_sync_manager.h"
13 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h" 14 #include "chrome/browser/ui/cocoa/cocoa_profile_test.h"
14 #include "chrome/browser/ui/cocoa/run_loop_testing.h" 15 #include "chrome/browser/ui/cocoa/run_loop_testing.h"
15 #import "chrome/browser/ui/cocoa/toolbar/toolbar_controller.h" 16 #import "chrome/browser/ui/cocoa/toolbar/toolbar_controller.h"
16 #import "chrome/browser/ui/cocoa/view_resizer_pong.h" 17 #import "chrome/browser/ui/cocoa/view_resizer_pong.h"
17 #import "chrome/browser/ui/cocoa/wrench_menu/wrench_menu_controller.h" 18 #import "chrome/browser/ui/cocoa/wrench_menu/wrench_menu_controller.h"
18 #include "chrome/browser/ui/toolbar/recent_tabs_builder_test_helper.h" 19 #include "chrome/browser/ui/toolbar/recent_tabs_builder_test_helper.h"
19 #include "chrome/browser/ui/toolbar/recent_tabs_sub_menu_model.h" 20 #include "chrome/browser/ui/toolbar/recent_tabs_sub_menu_model.h"
20 #include "chrome/browser/ui/toolbar/wrench_menu_model.h" 21 #include "chrome/browser/ui/toolbar/wrench_menu_model.h"
(...skipping 29 matching lines...) Expand all
50 51
51 class DummyRouter : public browser_sync::LocalSessionEventRouter { 52 class DummyRouter : public browser_sync::LocalSessionEventRouter {
52 public: 53 public:
53 virtual ~DummyRouter() {} 54 virtual ~DummyRouter() {}
54 virtual void StartRoutingTo( 55 virtual void StartRoutingTo(
55 browser_sync::LocalSessionEventHandler* handler) OVERRIDE {} 56 browser_sync::LocalSessionEventHandler* handler) OVERRIDE {}
56 virtual void Stop() OVERRIDE {} 57 virtual void Stop() OVERRIDE {}
57 }; 58 };
58 59
59 class WrenchMenuControllerTest 60 class WrenchMenuControllerTest
60 : public CocoaProfileTest, 61 : public CocoaProfileTest {
61 public browser_sync::SessionsSyncManager::SyncInternalApiDelegate {
62 public: 62 public:
63 WrenchMenuControllerTest()
64 : local_device_(new browser_sync::LocalDeviceInfoProviderMock(
65 "WrenchMenuControllerTest",
66 "Test Machine",
67 "Chromium 10k",
68 "Chrome 10k",
69 sync_pb::SyncEnums_DeviceType_TYPE_LINUX)) {
70 }
71
72 virtual ~WrenchMenuControllerTest() {}
73
63 virtual void SetUp() OVERRIDE { 74 virtual void SetUp() OVERRIDE {
64 CocoaProfileTest::SetUp(); 75 CocoaProfileTest::SetUp();
65 ASSERT_TRUE(browser()); 76 ASSERT_TRUE(browser());
66 77
67 controller_.reset([[WrenchMenuController alloc] initWithBrowser:browser()]); 78 controller_.reset([[WrenchMenuController alloc] initWithBrowser:browser()]);
68 fake_model_.reset(new MockWrenchMenuModel); 79 fake_model_.reset(new MockWrenchMenuModel);
69 80
70 manager_.reset(new browser_sync::SessionsSyncManager( 81 manager_.reset(new browser_sync::SessionsSyncManager(
71 profile(), 82 profile(),
72 this, 83 local_device_.get(),
73 scoped_ptr<browser_sync::LocalSessionEventRouter>( 84 scoped_ptr<browser_sync::LocalSessionEventRouter>(
74 new DummyRouter()))); 85 new DummyRouter())));
75 manager_->MergeDataAndStartSyncing( 86 manager_->MergeDataAndStartSyncing(
76 syncer::SESSIONS, 87 syncer::SESSIONS,
77 syncer::SyncDataList(), 88 syncer::SyncDataList(),
78 scoped_ptr<syncer::SyncChangeProcessor>( 89 scoped_ptr<syncer::SyncChangeProcessor>(
79 new syncer::FakeSyncChangeProcessor), 90 new syncer::FakeSyncChangeProcessor),
80 scoped_ptr<syncer::SyncErrorFactory>( 91 scoped_ptr<syncer::SyncErrorFactory>(
81 new syncer::SyncErrorFactoryMock)); 92 new syncer::SyncErrorFactoryMock));
82 } 93 }
83 94
84 virtual scoped_ptr<browser_sync::DeviceInfo> GetLocalDeviceInfo()
85 const OVERRIDE {
86 return scoped_ptr<browser_sync::DeviceInfo>(
87 new browser_sync::DeviceInfo(GetLocalSyncCacheGUID(),
88 "Test Machine",
89 "Chromium 10k",
90 "Chrome 10k",
91 sync_pb::SyncEnums_DeviceType_TYPE_LINUX));
92 }
93
94 virtual std::string GetLocalSyncCacheGUID() const OVERRIDE {
95 return "WrenchMenuControllerTest";
96 }
97
98 void RegisterRecentTabs(RecentTabsBuilderTestHelper* helper) { 95 void RegisterRecentTabs(RecentTabsBuilderTestHelper* helper) {
99 helper->ExportToSessionsSyncManager(manager_.get()); 96 helper->ExportToSessionsSyncManager(manager_.get());
100 } 97 }
101 98
102 browser_sync::OpenTabsUIDelegate* GetOpenTabsDelegate() { 99 browser_sync::OpenTabsUIDelegate* GetOpenTabsDelegate() {
103 return manager_.get(); 100 return manager_.get();
104 } 101 }
105 102
106 virtual void TearDown() OVERRIDE { 103 virtual void TearDown() OVERRIDE {
107 fake_model_.reset(); 104 fake_model_.reset();
108 controller_.reset(); 105 controller_.reset();
109 manager_.reset(); 106 manager_.reset();
110 CocoaProfileTest::TearDown(); 107 CocoaProfileTest::TearDown();
111 } 108 }
112 109
113 WrenchMenuController* controller() { 110 WrenchMenuController* controller() {
114 return controller_.get(); 111 return controller_.get();
115 } 112 }
116 113
117 base::scoped_nsobject<WrenchMenuController> controller_; 114 base::scoped_nsobject<WrenchMenuController> controller_;
118 115
119 scoped_ptr<MockWrenchMenuModel> fake_model_; 116 scoped_ptr<MockWrenchMenuModel> fake_model_;
120 117
121 private: 118 private:
122 scoped_ptr<browser_sync::SessionsSyncManager> manager_; 119 scoped_ptr<browser_sync::SessionsSyncManager> manager_;
120 scoped_ptr<browser_sync::LocalDeviceInfoProviderMock> local_device_;
123 }; 121 };
124 122
125 TEST_F(WrenchMenuControllerTest, Initialized) { 123 TEST_F(WrenchMenuControllerTest, Initialized) {
126 EXPECT_TRUE([controller() menu]); 124 EXPECT_TRUE([controller() menu]);
127 EXPECT_GE([[controller() menu] numberOfItems], 5); 125 EXPECT_GE([[controller() menu] numberOfItems], 5);
128 } 126 }
129 127
130 TEST_F(WrenchMenuControllerTest, DispatchSimple) { 128 TEST_F(WrenchMenuControllerTest, DispatchSimple) {
131 base::scoped_nsobject<NSButton> button([[NSButton alloc] init]); 129 base::scoped_nsobject<NSButton> button([[NSButton alloc] init]);
132 [button setTag:IDC_ZOOM_PLUS]; 130 [button setTag:IDC_ZOOM_PLUS];
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
234 } 232 }
235 233
236 // Verify that |RecentTabsMenuModelDelegate| is deleted before the model 234 // Verify that |RecentTabsMenuModelDelegate| is deleted before the model
237 // it's observing. 235 // it's observing.
238 TEST_F(WrenchMenuControllerTest, RecentTabDeleteOrder) { 236 TEST_F(WrenchMenuControllerTest, RecentTabDeleteOrder) {
239 [controller_ menuNeedsUpdate:[controller_ menu]]; 237 [controller_ menuNeedsUpdate:[controller_ menu]];
240 // If the delete order is wrong then the test will crash on exit. 238 // If the delete order is wrong then the test will crash on exit.
241 } 239 }
242 240
243 } // namespace 241 } // namespace
OLDNEW
« no previous file with comments | « chrome/browser/sync/test_profile_sync_service.cc ('k') | chrome/browser/ui/sync/one_click_signin_helper_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698