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

Side by Side Diff: ios/chrome/browser/ui/context_menu/context_menu_controller_unittest.mm

Issue 1891863004: Copy contents of ui/base/ios into ios/chrome/browser/ui/context_menu (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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 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 "ios/chrome/browser/ui/context_menu/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 #import "ios/chrome/browser/ui/context_menu/context_menu_holder.h"
10 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
11 #include "testing/platform_test.h" 12 #include "testing/platform_test.h"
12 #import "ui/base/ios/cru_context_menu_holder.h"
13 13
14 namespace { 14 namespace {
15 15
16 class ContextMenuControllerTest : public PlatformTest { 16 class ContextMenuControllerTest : public PlatformTest {
17 public: 17 public:
18 ContextMenuControllerTest() { } 18 ContextMenuControllerTest() {}
19 19
20 void SetUp() override { 20 void SetUp() override {
21 _menuController.reset([[CRUContextMenuController alloc] init]); 21 _menuController.reset([[ContextMenuController alloc] init]);
sdefresne 2016/04/18 08:47:29 Another buggy test that forgot to call "PlaformTes
Jackie Quinn 2016/04/19 14:24:27 No problem, done!
22 _window.reset( 22 _window.reset(
23 [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]); 23 [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]);
24 [_window makeKeyAndVisible]; 24 [_window makeKeyAndVisible];
25 } 25 }
26 26
27 protected: 27 protected:
28 base::scoped_nsobject<CRUContextMenuController> _menuController; 28 base::scoped_nsobject<ContextMenuController> _menuController;
29 base::scoped_nsobject<UIWindow> _window; 29 base::scoped_nsobject<UIWindow> _window;
30 }; 30 };
31 31
32 TEST_F(ContextMenuControllerTest, OneEntry) { 32 TEST_F(ContextMenuControllerTest, OneEntry) {
33 base::scoped_nsobject<CRUContextMenuHolder> holder( 33 base::scoped_nsobject<ContextMenuHolder> holder(
34 [[CRUContextMenuHolder alloc] init]); 34 [[ContextMenuHolder 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:^{
39 *clickedPtr = YES;
40 }];
39 [holder setMenuTitle:@"FooTitle"]; 41 [holder setMenuTitle:@"FooTitle"];
40 42
41 [_menuController showWithHolder:holder atPoint:CGPointZero inView:_window]; 43 [_menuController showWithHolder:holder atPoint:CGPointZero inView:_window];
42 44
43 EXPECT_TRUE([_menuController isVisible]); 45 EXPECT_TRUE([_menuController isVisible]);
44 } 46 }
45 47
46 TEST_F(ContextMenuControllerTest, ShouldDismissImmediately) { 48 TEST_F(ContextMenuControllerTest, ShouldDismissImmediately) {
47 base::scoped_nsobject<CRUContextMenuHolder> holder( 49 base::scoped_nsobject<ContextMenuHolder> holder(
48 [[CRUContextMenuHolder alloc] init]); 50 [[ContextMenuHolder alloc] init]);
49 [holder appendItemWithTitle:@"foo" action:^{}]; 51 [holder appendItemWithTitle:@"foo" action:^{}];
50 [holder appendItemWithTitle:@"bar" action:^{} dismissImmediately:YES]; 52 [holder appendItemWithTitle:@"bar" action:^{} dismissImmediately:YES];
51 [holder appendItemWithTitle:@"baz" action:^{} dismissImmediately:NO]; 53 [holder appendItemWithTitle:@"baz" action:^{} dismissImmediately:NO];
52 54
53 EXPECT_FALSE([holder shouldDismissImmediatelyOnClickedAtIndex:0]); 55 EXPECT_FALSE([holder shouldDismissImmediatelyOnClickedAtIndex:0]);
54 EXPECT_TRUE([holder shouldDismissImmediatelyOnClickedAtIndex:1]); 56 EXPECT_TRUE([holder shouldDismissImmediatelyOnClickedAtIndex:1]);
55 EXPECT_FALSE([holder shouldDismissImmediatelyOnClickedAtIndex:2]); 57 EXPECT_FALSE([holder shouldDismissImmediatelyOnClickedAtIndex:2]);
56 } 58 }
57 59
58 } // namespace 60 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698