OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "chrome/browser/ui/cocoa/website_settings/permission_bubble_controller.h " | 5 #import "chrome/browser/ui/cocoa/website_settings/permission_bubble_controller.h " |
6 | 6 |
7 #include <Carbon/Carbon.h> | 7 #include <Carbon/Carbon.h> |
8 | 8 |
9 #include "base/mac/foundation_util.h" | 9 #include "base/mac/foundation_util.h" |
10 #import "base/mac/scoped_objc_class_swizzler.h" | 10 #import "base/mac/scoped_objc_class_swizzler.h" |
11 #include "base/mac/sdk_forward_declarations.h" | 11 #include "base/mac/sdk_forward_declarations.h" |
12 #include "base/stl_util.h" | 12 #include "base/stl_util.h" |
13 #include "base/strings/sys_string_conversions.h" | 13 #include "base/strings/sys_string_conversions.h" |
14 #include "base/strings/utf_string_conversions.h" | 14 #include "base/strings/utf_string_conversions.h" |
15 #include "chrome/browser/permissions/mock_permission_request.h" | 15 #include "chrome/browser/permissions/mock_permission_request.h" |
16 #include "chrome/browser/ui/browser.h" | 16 #include "chrome/browser/ui/browser.h" |
17 #include "chrome/browser/ui/browser_window.h" | 17 #include "chrome/browser/ui/browser_window.h" |
18 #include "chrome/browser/ui/cocoa/browser_window_controller.h" | 18 #include "chrome/browser/ui/cocoa/browser_window_controller.h" |
19 #import "chrome/browser/ui/cocoa/cocoa_profile_test.h" | 19 #import "chrome/browser/ui/cocoa/cocoa_profile_test.h" |
20 #include "chrome/browser/ui/cocoa/location_bar/location_bar_view_mac.h" | 20 #include "chrome/browser/ui/cocoa/location_bar/location_bar_view_mac.h" |
21 #include "chrome/browser/ui/cocoa/run_loop_testing.h" | 21 #include "chrome/browser/ui/cocoa/run_loop_testing.h" |
22 #import "chrome/browser/ui/cocoa/website_settings/permission_bubble_cocoa.h" | 22 #import "chrome/browser/ui/cocoa/website_settings/permission_bubble_cocoa.h" |
23 #import "chrome/browser/ui/cocoa/website_settings/split_block_button.h" | 23 #import "chrome/browser/ui/cocoa/website_settings/split_block_button.h" |
24 #include "chrome/browser/ui/tabs/tab_strip_model.h" | |
24 #include "chrome/grit/generated_resources.h" | 25 #include "chrome/grit/generated_resources.h" |
25 #include "components/strings/grit/components_strings.h" | 26 #include "components/strings/grit/components_strings.h" |
27 #include "content/public/browser/web_contents.h" | |
26 #include "testing/gmock/include/gmock/gmock.h" | 28 #include "testing/gmock/include/gmock/gmock.h" |
27 #import "testing/gtest_mac.h" | 29 #import "testing/gtest_mac.h" |
28 #include "ui/base/cocoa/cocoa_base_utils.h" | 30 #include "ui/base/cocoa/cocoa_base_utils.h" |
29 #include "ui/base/l10n/l10n_util.h" | 31 #include "ui/base/l10n/l10n_util.h" |
30 #include "ui/base/l10n/l10n_util_mac.h" | 32 #include "ui/base/l10n/l10n_util_mac.h" |
31 #import "ui/events/test/cocoa_test_event_utils.h" | 33 #import "ui/events/test/cocoa_test_event_utils.h" |
32 | 34 |
33 @class ConstrainedWindowButton; | 35 @class ConstrainedWindowButton; |
34 | 36 |
35 @interface PermissionBubbleController (ExposedForTesting) | 37 @interface PermissionBubbleController (ExposedForTesting) |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
71 | 73 |
72 MOCK_METHOD2(ToggleAccept, void(int, bool)); | 74 MOCK_METHOD2(ToggleAccept, void(int, bool)); |
73 MOCK_METHOD0(SetCustomizationMode, void()); | 75 MOCK_METHOD0(SetCustomizationMode, void()); |
74 MOCK_METHOD0(Accept, void()); | 76 MOCK_METHOD0(Accept, void()); |
75 MOCK_METHOD0(Deny, void()); | 77 MOCK_METHOD0(Deny, void()); |
76 MOCK_METHOD0(Closing, void()); | 78 MOCK_METHOD0(Closing, void()); |
77 MOCK_METHOD1(SetView, void(PermissionPrompt*)); | 79 MOCK_METHOD1(SetView, void(PermissionPrompt*)); |
78 | 80 |
79 void SetUp() override { | 81 void SetUp() override { |
80 CocoaProfileTest::SetUp(); | 82 CocoaProfileTest::SetUp(); |
81 bridge_.reset(new PermissionBubbleCocoa(browser())); | 83 content::WebContents* web_contents = content::WebContents::Create( |
84 content::WebContents::CreateParams(profile())); | |
85 TabStripModel* model = browser()->tab_strip_model(); | |
86 model->AppendWebContents(web_contents, true); | |
raymes
2016/09/15 02:07:32
Please get someone else to take a look at this (ta
lshang
2016/09/15 09:45:06
NaN. As Trent suggested, we will just change the i
| |
87 bridge_.reset(new PermissionBubbleCocoa(web_contents)); | |
82 AddRequest(kPermissionA); | 88 AddRequest(kPermissionA); |
83 controller_ = | 89 controller_ = |
84 [[PermissionBubbleController alloc] initWithBrowser:browser() | 90 [[PermissionBubbleController alloc] initWithBrowser:browser() |
85 bridge:bridge_.get()]; | 91 bridge:bridge_.get()]; |
86 } | 92 } |
87 | 93 |
88 void TearDown() override { | 94 void TearDown() override { |
89 [controller_ close]; | 95 [controller_ close]; |
90 chrome::testing::NSRunLoopRunAllPending(); | 96 chrome::testing::NSRunLoopRunAllPending(); |
91 base::STLDeleteElements(&requests_); | 97 base::STLDeleteElements(&requests_); |
(...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
400 base::mac::ScopedObjCClassSwizzler locationSwizzle( | 406 base::mac::ScopedObjCClassSwizzler locationSwizzle( |
401 [PermissionBubbleController class], [MockBubbleNoLocationBar class], | 407 [PermissionBubbleController class], [MockBubbleNoLocationBar class], |
402 @selector(hasVisibleLocationBarForBrowser:)); | 408 @selector(hasVisibleLocationBarForBrowser:)); |
403 withoutLocationBar = [controller_ getExpectedAnchorPoint]; | 409 withoutLocationBar = [controller_ getExpectedAnchorPoint]; |
404 } | 410 } |
405 | 411 |
406 // The bubble should be in different places depending if the location bar is | 412 // The bubble should be in different places depending if the location bar is |
407 // available or not. | 413 // available or not. |
408 EXPECT_NSNE(withLocationBar, withoutLocationBar); | 414 EXPECT_NSNE(withLocationBar, withoutLocationBar); |
409 } | 415 } |
OLD | NEW |