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

Unified Diff: chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller_unittest.mm

Issue 10829170: Cocoa: Show OAuth issues in extension install dialog (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: " Created 8 years, 4 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller_unittest.mm
diff --git a/chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller_unittest.mm b/chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller_unittest.mm
index 69e081b0ae00d2fdb6eb55737fc16de627d5a5e9..5f769734dfc96ccda8cb7344b284a9885ccc15a5 100644
--- a/chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller_unittest.mm
+++ b/chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller_unittest.mm
@@ -138,12 +138,12 @@ TEST_F(ExtensionInstallDialogControllerTest, BasicsNormalCancel) {
EXPECT_TRUE([controller titleField] != nil);
EXPECT_NE(0u, [[[controller titleField] stringValue] length]);
- EXPECT_TRUE([controller subtitleField] != nil);
- EXPECT_NE(0u, [[[controller subtitleField] stringValue] length]);
- EXPECT_NE('^', [[[controller subtitleField] stringValue] characterAtIndex:0]);
-
- EXPECT_TRUE([controller warningsField] != nil);
- EXPECT_NSEQ([[controller warningsField] stringValue],
+ NSOutlineView* outlineView = [controller outlineView];
+ EXPECT_TRUE(outlineView != nil);
+ EXPECT_EQ(2, [outlineView numberOfRows]);
+ EXPECT_NSEQ([[outlineView dataSource] outlineView:outlineView
+ objectValueForTableColumn:nil
+ byItem:[outlineView itemAtRow:1]],
base::SysUTF16ToNSString(prompt.GetPermission(0)));
EXPECT_TRUE([controller cancelButton] != nil);
@@ -231,11 +231,8 @@ TEST_F(ExtensionInstallDialogControllerTest, MultipleWarnings) {
ASSERT_LT([[controller1 window] frame].size.height,
[[controller2 window] frame].size.height);
- ASSERT_LT([[controller1 warningsField] frame].size.height,
- [[controller2 warningsField] frame].size.height);
-
- ASSERT_LT([[controller1 subtitleField] frame].origin.y,
- [[controller2 subtitleField] frame].origin.y);
+ ASSERT_LT([[controller1 outlineView] frame].size.height,
+ [[controller2 outlineView] frame].size.height);
ASSERT_LT([[controller1 titleField] frame].origin.y,
[[controller2 titleField] frame].origin.y);
@@ -281,8 +278,7 @@ TEST_F(ExtensionInstallDialogControllerTest, BasicsSkinny) {
EXPECT_NE(0u, [[[controller okButton] stringValue] length]);
EXPECT_NE('^', [[[controller okButton] stringValue] characterAtIndex:0]);
- EXPECT_TRUE([controller subtitleField] == nil);
- EXPECT_TRUE([controller warningsField] == nil);
+ EXPECT_TRUE([controller outlineView] == nil);
}
@@ -336,10 +332,42 @@ TEST_F(ExtensionInstallDialogControllerTest, BasicsInline) {
// Though we have no permissions warnings, these should still be hooked up,
// just invisible.
- EXPECT_TRUE([controller subtitleField] != nil);
- EXPECT_TRUE([[controller subtitleField] isHidden]);
- EXPECT_TRUE([controller warningsField] != nil);
- EXPECT_TRUE([[controller warningsField] isHidden]);
+ EXPECT_TRUE([controller outlineView] != nil);
+ EXPECT_TRUE([[[controller outlineView] enclosingScrollView] isHidden]);
EXPECT_TRUE([controller warningsSeparator] != nil);
EXPECT_TRUE([[controller warningsSeparator] isHidden]);
}
+
+TEST_F(ExtensionInstallDialogControllerTest, OAuthIssues) {
+ MockExtensionInstallPromptDelegate delegate;
+
+ ExtensionInstallPrompt::Prompt prompt(
+ ExtensionInstallPrompt::INSTALL_PROMPT);
+ std::vector<string16> permissions;
+ permissions.push_back(UTF8ToUTF16("warning 1"));
+ prompt.SetPermissions(permissions);
+ IssueAdviceInfoEntry issue;
+ issue.description = UTF8ToUTF16("issue description 1");
+ issue.details.push_back(UTF8ToUTF16("issue detail 1"));
+ IssueAdviceInfo issues;
+ issues.push_back(issue);
+ prompt.SetOAuthIssueAdvice(issues);
+ prompt.set_extension(extension_.get());
+ prompt.set_icon(icon_);
+
+ scoped_nsobject<ExtensionInstallDialogController>
+ controller([[ExtensionInstallDialogController alloc]
+ initWithParentWindow:test_window()
+ navigator:browser()
+ delegate:&delegate
+ prompt:prompt]);
+
+ [controller window]; // force nib load
+ NSOutlineView* outlineView = [controller outlineView];
+ EXPECT_TRUE(outlineView != nil);
+ EXPECT_EQ(4, [outlineView numberOfRows]);
+ EXPECT_NSEQ([[outlineView dataSource] outlineView:outlineView
+ objectValueForTableColumn:nil
+ byItem:[outlineView itemAtRow:3]],
+ base::SysUTF16ToNSString(prompt.GetOAuthIssue(0).description));
+}

Powered by Google App Engine
This is Rietveld 408576698