OLD | NEW |
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_dialog_controller.
h" | 5 #import "chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller.
h" |
6 | 6 |
7 #include "chrome/browser/ui/browser.h" | 7 #include "chrome/browser/ui/browser.h" |
8 #include "chrome/browser/ui/cocoa/constrained_window/constrained_window_sheet_co
ntroller.h" | 8 #include "chrome/browser/ui/cocoa/constrained_window/constrained_window_sheet_co
ntroller.h" |
9 #import "chrome/browser/ui/cocoa/extensions/extension_install_prompt_test_utils.
h" | 9 #import "chrome/browser/ui/cocoa/extensions/extension_install_prompt_test_utils.
h" |
10 #import "chrome/browser/ui/cocoa/extensions/extension_install_view_controller.h" | 10 #import "chrome/browser/ui/cocoa/extensions/extension_install_view_controller.h" |
| 11 #include "chrome/browser/ui/extensions/extension_install_prompt_show_params.h" |
11 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 12 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
12 #include "chrome/test/base/in_process_browser_test.h" | 13 #include "chrome/test/base/in_process_browser_test.h" |
13 #include "extensions/common/extension.h" | 14 #include "extensions/common/extension.h" |
14 | 15 |
15 using extensions::Extension; | 16 using extensions::Extension; |
16 | 17 |
17 class ExtensionInstallDialogControllerTest : public InProcessBrowserTest { | 18 class ExtensionInstallDialogControllerTest : public InProcessBrowserTest { |
18 public: | 19 public: |
19 ExtensionInstallDialogControllerTest() {} | 20 ExtensionInstallDialogControllerTest() {} |
20 | 21 |
21 void SetUpOnMainThread() override { | 22 void SetUpOnMainThread() override { |
22 extension_ = chrome::LoadInstallPromptExtension(); | 23 extension_ = chrome::LoadInstallPromptExtension(); |
23 } | 24 } |
24 | 25 |
25 protected: | 26 protected: |
26 scoped_refptr<Extension> extension_; | 27 scoped_refptr<Extension> extension_; |
27 }; | 28 }; |
28 | 29 |
29 IN_PROC_BROWSER_TEST_F(ExtensionInstallDialogControllerTest, BasicTest) { | 30 IN_PROC_BROWSER_TEST_F(ExtensionInstallDialogControllerTest, BasicTest) { |
30 content::WebContents* tab = browser()->tab_strip_model()->GetWebContentsAt(0); | 31 content::WebContents* tab = browser()->tab_strip_model()->GetWebContentsAt(0); |
31 ExtensionInstallPrompt::ShowParams show_params(tab); | 32 ExtensionInstallPromptShowParams show_params(tab); |
32 | 33 |
33 chrome::MockExtensionInstallPromptDelegate delegate; | 34 chrome::MockExtensionInstallPromptDelegate delegate; |
34 scoped_refptr<ExtensionInstallPrompt::Prompt> prompt = | 35 scoped_refptr<ExtensionInstallPrompt::Prompt> prompt = |
35 chrome::BuildExtensionInstallPrompt(extension_.get()); | 36 chrome::BuildExtensionInstallPrompt(extension_.get()); |
36 | 37 |
37 ExtensionInstallDialogController* controller = | 38 ExtensionInstallDialogController* controller = |
38 new ExtensionInstallDialogController(show_params, | 39 new ExtensionInstallDialogController(&show_params, |
39 &delegate, | 40 &delegate, |
40 prompt); | 41 prompt); |
41 | 42 |
42 base::scoped_nsobject<NSWindow> window( | 43 base::scoped_nsobject<NSWindow> window( |
43 [[[controller->view_controller() view] window] retain]); | 44 [[[controller->view_controller() view] window] retain]); |
44 EXPECT_TRUE([window isVisible]); | 45 EXPECT_TRUE([window isVisible]); |
45 | 46 |
46 // Press cancel to close the window | 47 // Press cancel to close the window |
47 [[controller->view_controller() cancelButton] performClick:nil]; | 48 [[controller->view_controller() cancelButton] performClick:nil]; |
48 | 49 |
49 // Wait for the window to finish closing. | 50 // Wait for the window to finish closing. |
50 EXPECT_FALSE([window isVisible]); | 51 EXPECT_FALSE([window isVisible]); |
51 } | 52 } |
52 | 53 |
53 IN_PROC_BROWSER_TEST_F(ExtensionInstallDialogControllerTest, | 54 IN_PROC_BROWSER_TEST_F(ExtensionInstallDialogControllerTest, |
54 DISABLED_Permissions) { | 55 DISABLED_Permissions) { |
55 content::WebContents* tab = browser()->tab_strip_model()->GetWebContentsAt(0); | 56 content::WebContents* tab = browser()->tab_strip_model()->GetWebContentsAt(0); |
56 ExtensionInstallPrompt::ShowParams show_params(tab); | 57 ExtensionInstallPromptShowParams show_params(tab); |
57 | 58 |
58 chrome::MockExtensionInstallPromptDelegate delegate; | 59 chrome::MockExtensionInstallPromptDelegate delegate; |
59 scoped_refptr<ExtensionInstallPrompt::Prompt> prompt = | 60 scoped_refptr<ExtensionInstallPrompt::Prompt> prompt = |
60 chrome::BuildExtensionPostInstallPermissionsPrompt(extension_.get()); | 61 chrome::BuildExtensionPostInstallPermissionsPrompt(extension_.get()); |
61 | 62 |
62 ExtensionInstallDialogController* controller = | 63 ExtensionInstallDialogController* controller = |
63 new ExtensionInstallDialogController(show_params, | 64 new ExtensionInstallDialogController(&show_params, |
64 &delegate, | 65 &delegate, |
65 prompt); | 66 prompt); |
66 | 67 |
67 base::scoped_nsobject<NSWindow> window( | 68 base::scoped_nsobject<NSWindow> window( |
68 [[[controller->view_controller() view] window] retain]); | 69 [[[controller->view_controller() view] window] retain]); |
69 EXPECT_TRUE([window isVisible]); | 70 EXPECT_TRUE([window isVisible]); |
70 | 71 |
71 // Press cancel to close the window | 72 // Press cancel to close the window |
72 [[controller->view_controller() cancelButton] performClick:nil]; | 73 [[controller->view_controller() cancelButton] performClick:nil]; |
73 | 74 |
74 // Wait for the window to finish closing. | 75 // Wait for the window to finish closing. |
75 EXPECT_FALSE([window isVisible]); | 76 EXPECT_FALSE([window isVisible]); |
76 } | 77 } |
OLD | NEW |