| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #import <Cocoa/Cocoa.h> | |
| 6 | |
| 7 #include "base/scoped_nsobject.h" | |
| 8 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" | |
| 9 #import "chrome/browser/ui/cocoa/menu_tracked_root_view.h" | |
| 10 #include "testing/gtest/include/gtest/gtest.h" | |
| 11 #include "testing/platform_test.h" | |
| 12 #import "third_party/ocmock/OCMock/OCMock.h" | |
| 13 | |
| 14 class MenuTrackedRootViewTest : public CocoaTest { | |
| 15 public: | |
| 16 void SetUp() { | |
| 17 CocoaTest::SetUp(); | |
| 18 view_.reset([[MenuTrackedRootView alloc] init]); | |
| 19 } | |
| 20 | |
| 21 scoped_nsobject<MenuTrackedRootView> view_; | |
| 22 }; | |
| 23 | |
| 24 TEST_F(MenuTrackedRootViewTest, MouseUp) { | |
| 25 id menu = [OCMockObject mockForClass:[NSMenu class]]; | |
| 26 [[menu expect] cancelTracking]; | |
| 27 | |
| 28 id menuItem = [OCMockObject mockForClass:[NSMenuItem class]]; | |
| 29 [[[menuItem stub] andReturn:menu] menu]; | |
| 30 | |
| 31 [view_ setMenuItem:menuItem]; | |
| 32 NSEvent* event = [NSEvent mouseEventWithType:NSLeftMouseUp | |
| 33 location:NSMakePoint(42, 42) | |
| 34 modifierFlags:0 | |
| 35 timestamp:0 | |
| 36 windowNumber:[test_window() windowNumber] | |
| 37 context:nil | |
| 38 eventNumber:1 | |
| 39 clickCount:1 | |
| 40 pressure:1.0]; | |
| 41 [view_ mouseUp:event]; | |
| 42 | |
| 43 [menu verify]; | |
| 44 [menuItem verify]; | |
| 45 } | |
| OLD | NEW |