| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "ui/base/ios/cru_context_menu_controller.h" | 5 #import "ui/base/ios/cru_context_menu_controller.h" |
| 6 | 6 |
| 7 #import <UIKit/UIKit.h> | 7 #import <UIKit/UIKit.h> |
| 8 | 8 |
| 9 #include "base/mac/scoped_nsobject.h" | 9 #include "base/mac/scoped_nsobject.h" |
| 10 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
| (...skipping 23 matching lines...) Expand all Loading... |
| 34 [[CRUContextMenuHolder alloc] init]); | 34 [[CRUContextMenuHolder alloc] init]); |
| 35 BOOL clicked = NO; | 35 BOOL clicked = NO; |
| 36 BOOL* clickedPtr = &clicked; | 36 BOOL* clickedPtr = &clicked; |
| 37 | 37 |
| 38 [holder appendItemWithTitle:@"foo" action:^{ *clickedPtr = YES; }]; | 38 [holder appendItemWithTitle:@"foo" action:^{ *clickedPtr = YES; }]; |
| 39 [holder setMenuTitle:@"FooTitle"]; | 39 [holder setMenuTitle:@"FooTitle"]; |
| 40 | 40 |
| 41 [_menuController showWithHolder:holder atPoint:CGPointZero inView:_window]; | 41 [_menuController showWithHolder:holder atPoint:CGPointZero inView:_window]; |
| 42 | 42 |
| 43 EXPECT_TRUE([_menuController isVisible]); | 43 EXPECT_TRUE([_menuController isVisible]); |
| 44 | |
| 45 UIActionSheet* sheet = _menuController.get().sheet; | |
| 46 [sheet dismissWithClickedButtonIndex:0 animated:NO]; | |
| 47 [_menuController actionSheet:sheet didDismissWithButtonIndex:0]; | |
| 48 | |
| 49 EXPECT_TRUE(clicked); | |
| 50 EXPECT_FALSE([_menuController isVisible]); | |
| 51 } | 44 } |
| 52 | 45 |
| 53 TEST_F(ContextMenuControllerTest, ShouldDismissImmediately) { | 46 TEST_F(ContextMenuControllerTest, ShouldDismissImmediately) { |
| 54 base::scoped_nsobject<CRUContextMenuHolder> holder( | 47 base::scoped_nsobject<CRUContextMenuHolder> holder( |
| 55 [[CRUContextMenuHolder alloc] init]); | 48 [[CRUContextMenuHolder alloc] init]); |
| 56 [holder appendItemWithTitle:@"foo" action:^{}]; | 49 [holder appendItemWithTitle:@"foo" action:^{}]; |
| 57 [holder appendItemWithTitle:@"bar" action:^{} dismissImmediately:YES]; | 50 [holder appendItemWithTitle:@"bar" action:^{} dismissImmediately:YES]; |
| 58 [holder appendItemWithTitle:@"baz" action:^{} dismissImmediately:NO]; | 51 [holder appendItemWithTitle:@"baz" action:^{} dismissImmediately:NO]; |
| 59 | 52 |
| 60 EXPECT_FALSE([holder shouldDismissImmediatelyOnClickedAtIndex:0]); | 53 EXPECT_FALSE([holder shouldDismissImmediatelyOnClickedAtIndex:0]); |
| 61 EXPECT_TRUE([holder shouldDismissImmediatelyOnClickedAtIndex:1]); | 54 EXPECT_TRUE([holder shouldDismissImmediatelyOnClickedAtIndex:1]); |
| 62 EXPECT_FALSE([holder shouldDismissImmediatelyOnClickedAtIndex:2]); | 55 EXPECT_FALSE([holder shouldDismissImmediatelyOnClickedAtIndex:2]); |
| 63 } | 56 } |
| 64 | 57 |
| 65 } // namespace | 58 } // namespace |
| OLD | NEW |