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

Side by Side Diff: chrome/browser/ui/cocoa/extensions/extension_install_view_controller_unittest.mm

Issue 2858013002: PS - Showing permission prompt for activeTab (Closed)
Patch Set: Changed permission prompt message Created 3 years, 6 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 "chrome/browser/ui/cocoa/extensions/extension_install_view_controller.h" 5 #import "chrome/browser/ui/cocoa/extensions/extension_install_view_controller.h"
6 6
7 #import <Cocoa/Cocoa.h> 7 #import <Cocoa/Cocoa.h>
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 MockExtensionInstallViewDelegate delegate; 76 MockExtensionInstallViewDelegate delegate;
77 77
78 std::unique_ptr<ExtensionInstallPrompt::Prompt> prompt( 78 std::unique_ptr<ExtensionInstallPrompt::Prompt> prompt(
79 chrome::BuildExtensionInstallPrompt(extension_.get())); 79 chrome::BuildExtensionInstallPrompt(extension_.get()));
80 ExtensionInstallPrompt::PermissionsType type = 80 ExtensionInstallPrompt::PermissionsType type =
81 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS; 81 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS;
82 82
83 PermissionMessages permissions; 83 PermissionMessages permissions;
84 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 1"), 84 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 1"),
85 PermissionIDSet())); 85 PermissionIDSet()));
86 prompt->SetPermissions(permissions, type); 86 prompt->AddPermissions(permissions, type);
87 base::string16 permissionString = prompt->GetPermission(0, type); 87 base::string16 permissionString = prompt->GetPermission(0, type);
88 88
89 base::scoped_nsobject<ExtensionInstallViewController> controller( 89 base::scoped_nsobject<ExtensionInstallViewController> controller(
90 [[ExtensionInstallViewController alloc] 90 [[ExtensionInstallViewController alloc]
91 initWithProfile:profile() 91 initWithProfile:profile()
92 navigator:browser() 92 navigator:browser()
93 delegate:&delegate 93 delegate:&delegate
94 prompt:std::move(prompt)]); 94 prompt:std::move(prompt)]);
95 95
96 [controller view]; // Force nib load. 96 [controller view]; // Force nib load.
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 MockExtensionInstallViewDelegate delegate; 134 MockExtensionInstallViewDelegate delegate;
135 135
136 std::unique_ptr<ExtensionInstallPrompt::Prompt> prompt( 136 std::unique_ptr<ExtensionInstallPrompt::Prompt> prompt(
137 chrome::BuildExtensionInstallPrompt(extension_.get())); 137 chrome::BuildExtensionInstallPrompt(extension_.get()));
138 ExtensionInstallPrompt::PermissionsType type = 138 ExtensionInstallPrompt::PermissionsType type =
139 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS; 139 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS;
140 140
141 PermissionMessages permissions; 141 PermissionMessages permissions;
142 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 1"), 142 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 1"),
143 PermissionIDSet())); 143 PermissionIDSet()));
144 prompt->SetPermissions(permissions, type); 144 prompt->AddPermissions(permissions, type);
145 145
146 base::scoped_nsobject<ExtensionInstallViewController> controller( 146 base::scoped_nsobject<ExtensionInstallViewController> controller(
147 [[ExtensionInstallViewController alloc] 147 [[ExtensionInstallViewController alloc]
148 initWithProfile:profile() 148 initWithProfile:profile()
149 navigator:browser() 149 navigator:browser()
150 delegate:&delegate 150 delegate:&delegate
151 prompt:std::move(prompt)]); 151 prompt:std::move(prompt)]);
152 152
153 [controller view]; // Force nib load. 153 [controller view]; // Force nib load.
154 [controller ok:nil]; 154 [controller ok:nil];
155 155
156 EXPECT_EQ(MockExtensionInstallViewDelegate::Action::OKAY, 156 EXPECT_EQ(MockExtensionInstallViewDelegate::Action::OKAY,
157 delegate.action()); 157 delegate.action());
158 } 158 }
159 159
160 // Test that controls get repositioned when there are two warnings vs one 160 // Test that controls get repositioned when there are two warnings vs one
161 // warning. 161 // warning.
162 TEST_F(ExtensionInstallViewControllerTest, MultipleWarnings) { 162 TEST_F(ExtensionInstallViewControllerTest, MultipleWarnings) {
163 MockExtensionInstallViewDelegate delegate1; 163 MockExtensionInstallViewDelegate delegate1;
164 MockExtensionInstallViewDelegate delegate2; 164 MockExtensionInstallViewDelegate delegate2;
165 165
166 std::unique_ptr<ExtensionInstallPrompt::Prompt> one_warning_prompt( 166 std::unique_ptr<ExtensionInstallPrompt::Prompt> one_warning_prompt(
167 chrome::BuildExtensionInstallPrompt(extension_.get())); 167 chrome::BuildExtensionInstallPrompt(extension_.get()));
168 ExtensionInstallPrompt::PermissionsType type = 168 ExtensionInstallPrompt::PermissionsType type =
169 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS; 169 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS;
170 170
171 PermissionMessages permissions; 171 PermissionMessages permissions;
172 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 1"), 172 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 1"),
173 PermissionIDSet())); 173 PermissionIDSet()));
174 one_warning_prompt->SetPermissions(permissions, type); 174 one_warning_prompt->AddPermissions(permissions, type);
175 175
176 std::unique_ptr<ExtensionInstallPrompt::Prompt> two_warnings_prompt( 176 std::unique_ptr<ExtensionInstallPrompt::Prompt> two_warnings_prompt(
177 chrome::BuildExtensionInstallPrompt(extension_.get())); 177 chrome::BuildExtensionInstallPrompt(extension_.get()));
178 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 2"), 178 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 2"),
179 PermissionIDSet())); 179 PermissionIDSet()));
180 two_warnings_prompt->SetPermissions(permissions, type); 180 two_warnings_prompt->AddPermissions(permissions, type);
181 181
182 base::scoped_nsobject<ExtensionInstallViewController> controller1( 182 base::scoped_nsobject<ExtensionInstallViewController> controller1(
183 [[ExtensionInstallViewController alloc] 183 [[ExtensionInstallViewController alloc]
184 initWithProfile:profile() 184 initWithProfile:profile()
185 navigator:browser() 185 navigator:browser()
186 delegate:&delegate1 186 delegate:&delegate1
187 prompt:std::move(one_warning_prompt)]); 187 prompt:std::move(one_warning_prompt)]);
188 188
189 [controller1 view]; // Force nib load. 189 [controller1 view]; // Force nib load.
190 190
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
315 MockExtensionInstallViewDelegate delegate; 315 MockExtensionInstallViewDelegate delegate;
316 316
317 std::unique_ptr<ExtensionInstallPrompt::Prompt> prompt( 317 std::unique_ptr<ExtensionInstallPrompt::Prompt> prompt(
318 chrome::BuildExtensionPostInstallPermissionsPrompt(extension_.get())); 318 chrome::BuildExtensionPostInstallPermissionsPrompt(extension_.get()));
319 ExtensionInstallPrompt::PermissionsType type = 319 ExtensionInstallPrompt::PermissionsType type =
320 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS; 320 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS;
321 321
322 PermissionMessages permissions; 322 PermissionMessages permissions;
323 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 1"), 323 permissions.push_back(PermissionMessage(base::UTF8ToUTF16("warning 1"),
324 PermissionIDSet())); 324 PermissionIDSet()));
325 prompt->SetPermissions(permissions, type); 325 prompt->AddPermissions(permissions, type);
326 326
327 base::scoped_nsobject<ExtensionInstallViewController> controller( 327 base::scoped_nsobject<ExtensionInstallViewController> controller(
328 [[ExtensionInstallViewController alloc] 328 [[ExtensionInstallViewController alloc]
329 initWithProfile:profile() 329 initWithProfile:profile()
330 navigator:browser() 330 navigator:browser()
331 delegate:&delegate 331 delegate:&delegate
332 prompt:std::move(prompt)]); 332 prompt:std::move(prompt)]);
333 333
334 [controller view]; // Force nib load. 334 [controller view]; // Force nib load.
335 335
(...skipping 12 matching lines...) Expand all
348 std::unique_ptr<ExtensionInstallPrompt::Prompt> prompt( 348 std::unique_ptr<ExtensionInstallPrompt::Prompt> prompt(
349 chrome::BuildExtensionInstallPrompt(extension_.get())); 349 chrome::BuildExtensionInstallPrompt(extension_.get()));
350 ExtensionInstallPrompt::PermissionsType type = 350 ExtensionInstallPrompt::PermissionsType type =
351 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS; 351 ExtensionInstallPrompt::PermissionsType::REGULAR_PERMISSIONS;
352 352
353 PermissionMessages permissions; 353 PermissionMessages permissions;
354 permissions.push_back(PermissionMessage( 354 permissions.push_back(PermissionMessage(
355 base::UTF8ToUTF16("warning 1"), 355 base::UTF8ToUTF16("warning 1"),
356 PermissionIDSet(), 356 PermissionIDSet(),
357 std::vector<base::string16>(1, base::UTF8ToUTF16("Detail 1")))); 357 std::vector<base::string16>(1, base::UTF8ToUTF16("Detail 1"))));
358 prompt->SetPermissions(permissions, type); 358 prompt->AddPermissions(permissions, type);
359 prompt->SetIsShowingDetails( 359 prompt->SetIsShowingDetails(
360 ExtensionInstallPrompt::PERMISSIONS_DETAILS, 0, true); 360 ExtensionInstallPrompt::PERMISSIONS_DETAILS, 0, true);
361 base::string16 permissionString = prompt->GetPermissionsDetails(0, type); 361 base::string16 permissionString = prompt->GetPermissionsDetails(0, type);
362 362
363 base::scoped_nsobject<ExtensionInstallViewController> controller( 363 base::scoped_nsobject<ExtensionInstallViewController> controller(
364 [[ExtensionInstallViewController alloc] 364 [[ExtensionInstallViewController alloc]
365 initWithProfile:profile() 365 initWithProfile:profile()
366 navigator:browser() 366 navigator:browser()
367 delegate:&delegate 367 delegate:&delegate
368 prompt:std::move(prompt)]); 368 prompt:std::move(prompt)]);
369 369
370 [controller view]; // Force nib load. 370 [controller view]; // Force nib load.
371 371
372 NSOutlineView* outlineView = [controller outlineView]; 372 NSOutlineView* outlineView = [controller outlineView];
373 EXPECT_TRUE(outlineView); 373 EXPECT_TRUE(outlineView);
374 EXPECT_EQ(4, [outlineView numberOfRows]); 374 EXPECT_EQ(4, [outlineView numberOfRows]);
375 EXPECT_NSEQ(base::SysUTF16ToNSString(permissionString), 375 EXPECT_NSEQ(base::SysUTF16ToNSString(permissionString),
376 [[outlineView dataSource] outlineView:outlineView 376 [[outlineView dataSource] outlineView:outlineView
377 objectValueForTableColumn:nil 377 objectValueForTableColumn:nil
378 byItem:[outlineView itemAtRow:2]]); 378 byItem:[outlineView itemAtRow:2]]);
379 } 379 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698