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

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

Issue 6283005: [Mac] Move all the related files for the Wrench menu into a subdir of c/b/u/c... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/cocoa/wrench_menu_controller_unittest.mm
===================================================================
--- chrome/browser/ui/cocoa/wrench_menu_controller_unittest.mm (revision 71447)
+++ chrome/browser/ui/cocoa/wrench_menu_controller_unittest.mm (working copy)
@@ -1,84 +0,0 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "base/scoped_nsobject.h"
-#include "chrome/app/chrome_command_ids.h"
-#include "chrome/browser/ui/cocoa/browser_test_helper.h"
-#import "chrome/browser/ui/cocoa/cocoa_test_helper.h"
-#import "chrome/browser/ui/cocoa/toolbar_controller.h"
-#import "chrome/browser/ui/cocoa/wrench_menu_controller.h"
-#import "chrome/browser/ui/cocoa/view_resizer_pong.h"
-#include "chrome/browser/ui/toolbar/wrench_menu_model.h"
-#include "testing/gmock/include/gmock/gmock.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "testing/platform_test.h"
-
-// Override to avoid dealing with run loops in the testing environment.
-@implementation WrenchMenuController (UnitTesting)
-- (void)dispatchCommandInternal:(NSInteger)tag {
- [self wrenchMenuModel]->ExecuteCommand(tag);
-}
-@end
-
-
-namespace {
-
-class MockWrenchMenuModel : public WrenchMenuModel {
- public:
- MockWrenchMenuModel() : WrenchMenuModel() {}
- ~MockWrenchMenuModel() {
- // This dirty, ugly hack gets around a bug in the test. In
- // ~WrenchMenuModel(), there's a call to TabstripModel::RemoveObserver(this)
- // which mysteriously leads to this crash: http://crbug.com/49206 . It
- // seems that the vector of observers is getting hosed somewhere between
- // |-[ToolbarController dealloc]| and ~MockWrenchMenuModel(). This line
- // short-circuits the parent destructor to avoid this crash.
- tabstrip_model_ = NULL;
- }
- MOCK_METHOD1(ExecuteCommand, void(int command_id));
-};
-
-class WrenchMenuControllerTest : public CocoaTest {
- public:
- void SetUp() {
- Browser* browser = helper_.browser();
- resize_delegate_.reset([[ViewResizerPong alloc] init]);
- toolbar_controller_.reset(
- [[ToolbarController alloc] initWithModel:browser->toolbar_model()
- commands:browser->command_updater()
- profile:helper_.profile()
- browser:browser
- resizeDelegate:resize_delegate_.get()]);
- EXPECT_TRUE([toolbar_controller_ view]);
- NSView* parent = [test_window() contentView];
- [parent addSubview:[toolbar_controller_ view]];
- }
-
- WrenchMenuController* controller() {
- return [toolbar_controller_ wrenchMenuController];
- }
-
- BrowserTestHelper helper_;
- scoped_nsobject<ViewResizerPong> resize_delegate_;
- MockWrenchMenuModel fake_model_;
- scoped_nsobject<ToolbarController> toolbar_controller_;
-};
-
-TEST_F(WrenchMenuControllerTest, Initialized) {
- EXPECT_TRUE([controller() menu]);
- EXPECT_GE([[controller() menu] numberOfItems], 5);
-}
-
-TEST_F(WrenchMenuControllerTest, DispatchSimple) {
- scoped_nsobject<NSButton> button([[NSButton alloc] init]);
- [button setTag:IDC_ZOOM_PLUS];
-
- // Set fake model to test dispatching.
- EXPECT_CALL(fake_model_, ExecuteCommand(IDC_ZOOM_PLUS));
- [controller() setModel:&fake_model_];
-
- [controller() dispatchWrenchMenuCommand:button.get()];
-}
-
-} // namespace

Powered by Google App Engine
This is Rietveld 408576698