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

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

Issue 2716353003: [Extensions UI] Initially disabled OK button for extension install prompts. (Closed)
Patch Set: Fixing grammar in comments. Created 3 years, 9 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
11 #import "base/mac/scoped_nsobject.h" 11 #import "base/mac/scoped_nsobject.h"
12 #include "base/strings/sys_string_conversions.h" 12 #include "base/strings/sys_string_conversions.h"
13 #include "base/strings/utf_string_conversions.h" 13 #include "base/strings/utf_string_conversions.h"
14 #import "chrome/browser/extensions/extension_install_prompt.h" 14 #import "chrome/browser/extensions/extension_install_prompt.h"
15 #include "chrome/browser/ui/browser.h" 15 #include "chrome/browser/ui/browser.h"
16 #import "chrome/browser/ui/cocoa/extensions/extension_install_prompt_test_utils. h" 16 #import "chrome/browser/ui/cocoa/extensions/extension_install_prompt_test_utils. h"
17 #include "chrome/browser/ui/cocoa/test/cocoa_profile_test.h" 17 #include "chrome/browser/ui/cocoa/test/cocoa_profile_test.h"
18 #include "chrome/browser/ui/cocoa/test/run_loop_testing.h"
18 #include "extensions/common/extension.h" 19 #include "extensions/common/extension.h"
19 #include "extensions/common/permissions/permission_message_provider.h" 20 #include "extensions/common/permissions/permission_message_provider.h"
20 #include "testing/gtest/include/gtest/gtest.h" 21 #include "testing/gtest/include/gtest/gtest.h"
21 #import "testing/gtest_mac.h" 22 #import "testing/gtest_mac.h"
22 23
23 using extensions::Extension; 24 using extensions::Extension;
24 using extensions::PermissionIDSet; 25 using extensions::PermissionIDSet;
25 using extensions::PermissionMessage; 26 using extensions::PermissionMessage;
26 using extensions::PermissionMessages; 27 using extensions::PermissionMessages;
27 28
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after
370 [controller view]; // Force nib load. 371 [controller view]; // Force nib load.
371 372
372 NSOutlineView* outlineView = [controller outlineView]; 373 NSOutlineView* outlineView = [controller outlineView];
373 EXPECT_TRUE(outlineView); 374 EXPECT_TRUE(outlineView);
374 EXPECT_EQ(4, [outlineView numberOfRows]); 375 EXPECT_EQ(4, [outlineView numberOfRows]);
375 EXPECT_NSEQ(base::SysUTF16ToNSString(permissionString), 376 EXPECT_NSEQ(base::SysUTF16ToNSString(permissionString),
376 [[outlineView dataSource] outlineView:outlineView 377 [[outlineView dataSource] outlineView:outlineView
377 objectValueForTableColumn:nil 378 objectValueForTableColumn:nil
378 byItem:[outlineView itemAtRow:2]]); 379 byItem:[outlineView itemAtRow:2]]);
379 } 380 }
381
382 // Test that install button is disabled for a short time period.
383 TEST_F(ExtensionInstallViewControllerTest, DelayedInstalls) {
384 [ExtensionInstallViewController setInstallDelayForTesting:0];
385 MockExtensionInstallViewDelegate delegate;
386
387 std::unique_ptr<ExtensionInstallPrompt::Prompt> prompt(
388 chrome::BuildExtensionInstallPrompt(extension_.get()));
389
390 base::scoped_nsobject<ExtensionInstallViewController> controller(
391 [[ExtensionInstallViewController alloc]
392 initWithProfile:profile()
393 navigator:browser()
394 delegate:&delegate
395 prompt:std::move(prompt)]);
396
397 [controller view]; // Force nib load.
398
399 // Check initial button states.
400 NSButton* cancelButton_ = [controller cancelButton];
401 NSButton* okButton_ = [controller okButton];
402 EXPECT_TRUE([cancelButton_ isEnabled]);
403 EXPECT_FALSE([okButton_ isEnabled]);
404
405 // Check OK button state after timeout to verifiy that it is enabled.
406 chrome::testing::NSRunLoopRunAllPending();
407 EXPECT_TRUE([okButton_ isEnabled]);
408 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698