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

Side by Side Diff: chrome/browser/extensions/extension_resource_request_policy_apitest.cc

Issue 10702029: Move tab functions off Browser into browser_tabstrip and browser_tabrestore. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 5 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 | Annotate | Revision Log
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 #include "base/logging.h" 5 #include "base/logging.h"
6 #include "chrome/browser/extensions/extension_apitest.h" 6 #include "chrome/browser/extensions/extension_apitest.h"
7 #include "chrome/browser/ui/browser.h" 7 #include "chrome/browser/ui/browser.h"
8 #include "chrome/browser/ui/browser_tabstrip.h"
8 #include "chrome/common/chrome_switches.h" 9 #include "chrome/common/chrome_switches.h"
9 #include "chrome/test/base/ui_test_utils.h" 10 #include "chrome/test/base/ui_test_utils.h"
10 #include "content/public/browser/web_contents.h" 11 #include "content/public/browser/web_contents.h"
11 #include "googleurl/src/gurl.h" 12 #include "googleurl/src/gurl.h"
12 #include "net/base/mock_host_resolver.h" 13 #include "net/base/mock_host_resolver.h"
13 14
14 class ExtensionResourceRequestPolicyTest : public ExtensionApiTest { 15 class ExtensionResourceRequestPolicyTest : public ExtensionApiTest {
15 protected: 16 protected:
16 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { 17 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
17 ExtensionApiTest::SetUpCommandLine(command_line); 18 ExtensionApiTest::SetUpCommandLine(command_line);
(...skipping 22 matching lines...) Expand all
40 41
41 std::string host_b("b.com"); 42 std::string host_b("b.com");
42 GURL::Replacements make_host_b_com; 43 GURL::Replacements make_host_b_com;
43 make_host_b_com.SetHostStr(host_b); 44 make_host_b_com.SetHostStr(host_b);
44 45
45 // A web host that has permission. 46 // A web host that has permission.
46 ui_test_utils::NavigateToURL( 47 ui_test_utils::NavigateToURL(
47 browser(), web_resource.ReplaceComponents(make_host_a_com)); 48 browser(), web_resource.ReplaceComponents(make_host_a_com));
48 std::string result; 49 std::string result;
49 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 50 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
50 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 51 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
51 L"window.domAutomationController.send(document.title)", 52 L"window.domAutomationController.send(document.title)",
52 &result)); 53 &result));
53 EXPECT_EQ(result, "Loaded"); 54 EXPECT_EQ(result, "Loaded");
54 55
55 // A web host that loads a non-existent extension. 56 // A web host that loads a non-existent extension.
56 GURL non_existent_extension( 57 GURL non_existent_extension(
57 test_server()->GetURL( 58 test_server()->GetURL(
58 "files/extensions/api_test/extension_resource_request_policy/" 59 "files/extensions/api_test/extension_resource_request_policy/"
59 "non_existent_extension.html")); 60 "non_existent_extension.html"));
60 ui_test_utils::NavigateToURL(browser(), non_existent_extension); 61 ui_test_utils::NavigateToURL(browser(), non_existent_extension);
61 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 62 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
62 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 63 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
63 L"window.domAutomationController.send(document.title)", 64 L"window.domAutomationController.send(document.title)",
64 &result)); 65 &result));
65 EXPECT_EQ(result, "Image failed to load"); 66 EXPECT_EQ(result, "Image failed to load");
66 67
67 // A data URL. Data URLs should always be able to load chrome-extension:// 68 // A data URL. Data URLs should always be able to load chrome-extension://
68 // resources. 69 // resources.
69 std::string file_source; 70 std::string file_source;
70 ASSERT_TRUE(file_util::ReadFileToString( 71 ASSERT_TRUE(file_util::ReadFileToString(
71 test_data_dir_.AppendASCII("extension_resource_request_policy") 72 test_data_dir_.AppendASCII("extension_resource_request_policy")
72 .AppendASCII("index.html"), &file_source)); 73 .AppendASCII("index.html"), &file_source));
73 ui_test_utils::NavigateToURL(browser(), 74 ui_test_utils::NavigateToURL(browser(),
74 GURL(std::string("data:text/html;charset=utf-8,") + file_source)); 75 GURL(std::string("data:text/html;charset=utf-8,") + file_source));
75 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 76 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
76 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 77 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
77 L"window.domAutomationController.send(document.title)", 78 L"window.domAutomationController.send(document.title)",
78 &result)); 79 &result));
79 EXPECT_EQ(result, "Loaded"); 80 EXPECT_EQ(result, "Loaded");
80 81
81 // A different extension. Legacy (manifest_version 1) extensions should always 82 // A different extension. Legacy (manifest_version 1) extensions should always
82 // be able to load each other's resources. 83 // be able to load each other's resources.
83 ASSERT_TRUE(LoadExtension(test_data_dir_ 84 ASSERT_TRUE(LoadExtension(test_data_dir_
84 .AppendASCII("extension_resource_request_policy") 85 .AppendASCII("extension_resource_request_policy")
85 .AppendASCII("extension2"))); 86 .AppendASCII("extension2")));
86 ui_test_utils::NavigateToURL( 87 ui_test_utils::NavigateToURL(
87 browser(), 88 browser(),
88 GURL("chrome-extension://pbkkcbgdkliohhfaeefcijaghglkahja/index.html")); 89 GURL("chrome-extension://pbkkcbgdkliohhfaeefcijaghglkahja/index.html"));
89 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 90 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
90 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 91 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
91 L"window.domAutomationController.send(document.title)", 92 L"window.domAutomationController.send(document.title)",
92 &result)); 93 &result));
93 EXPECT_EQ(result, "Loaded"); 94 EXPECT_EQ(result, "Loaded");
94 } 95 }
95 96
96 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 97 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
97 ExtensionCanLoadHostedAppIcons) { 98 ExtensionCanLoadHostedAppIcons) {
98 ASSERT_TRUE(LoadExtension(test_data_dir_ 99 ASSERT_TRUE(LoadExtension(test_data_dir_
99 .AppendASCII("extension_resource_request_policy") 100 .AppendASCII("extension_resource_request_policy")
100 .AppendASCII("extension"))); 101 .AppendASCII("extension")));
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 ASSERT_TRUE(LoadExtension(test_data_dir_ 137 ASSERT_TRUE(LoadExtension(test_data_dir_
137 .AppendASCII("extension_resource_request_policy") 138 .AppendASCII("extension_resource_request_policy")
138 .AppendASCII("web_accessible"))); 139 .AppendASCII("web_accessible")));
139 140
140 GURL accessible_resource( 141 GURL accessible_resource(
141 test_server()->GetURL( 142 test_server()->GetURL(
142 "files/extensions/api_test/extension_resource_request_policy/" 143 "files/extensions/api_test/extension_resource_request_policy/"
143 "web_accessible/accessible_resource.html")); 144 "web_accessible/accessible_resource.html"));
144 ui_test_utils::NavigateToURL(browser(), accessible_resource); 145 ui_test_utils::NavigateToURL(browser(), accessible_resource);
145 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 146 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
146 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 147 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
147 L"window.domAutomationController.send(document.title)", 148 L"window.domAutomationController.send(document.title)",
148 &result)); 149 &result));
149 EXPECT_EQ("Loaded", result); 150 EXPECT_EQ("Loaded", result);
150 151
151 GURL xhr_accessible_resource( 152 GURL xhr_accessible_resource(
152 test_server()->GetURL( 153 test_server()->GetURL(
153 "files/extensions/api_test/extension_resource_request_policy/" 154 "files/extensions/api_test/extension_resource_request_policy/"
154 "web_accessible/xhr_accessible_resource.html")); 155 "web_accessible/xhr_accessible_resource.html"));
155 ui_test_utils::NavigateToURL( 156 ui_test_utils::NavigateToURL(
156 browser(), xhr_accessible_resource); 157 browser(), xhr_accessible_resource);
157 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 158 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
158 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 159 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
159 L"window.domAutomationController.send(document.title)", 160 L"window.domAutomationController.send(document.title)",
160 &result)); 161 &result));
161 EXPECT_EQ("XHR completed with status: 200", result); 162 EXPECT_EQ("XHR completed with status: 200", result);
162 163
163 GURL xhr_inaccessible_resource( 164 GURL xhr_inaccessible_resource(
164 test_server()->GetURL( 165 test_server()->GetURL(
165 "files/extensions/api_test/extension_resource_request_policy/" 166 "files/extensions/api_test/extension_resource_request_policy/"
166 "web_accessible/xhr_inaccessible_resource.html")); 167 "web_accessible/xhr_inaccessible_resource.html"));
167 ui_test_utils::NavigateToURL( 168 ui_test_utils::NavigateToURL(
168 browser(), xhr_inaccessible_resource); 169 browser(), xhr_inaccessible_resource);
169 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 170 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
170 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 171 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
171 L"window.domAutomationController.send(document.title)", 172 L"window.domAutomationController.send(document.title)",
172 &result)); 173 &result));
173 EXPECT_EQ("XHR failed to load resource", result); 174 EXPECT_EQ("XHR failed to load resource", result);
174 175
175 GURL nonaccessible_resource( 176 GURL nonaccessible_resource(
176 test_server()->GetURL( 177 test_server()->GetURL(
177 "files/extensions/api_test/extension_resource_request_policy/" 178 "files/extensions/api_test/extension_resource_request_policy/"
178 "web_accessible/nonaccessible_resource.html")); 179 "web_accessible/nonaccessible_resource.html"));
179 ui_test_utils::NavigateToURL(browser(), nonaccessible_resource); 180 ui_test_utils::NavigateToURL(browser(), nonaccessible_resource);
180 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 181 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
181 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 182 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
182 L"window.domAutomationController.send(document.title)", 183 L"window.domAutomationController.send(document.title)",
183 &result)); 184 &result));
184 EXPECT_EQ("Image failed to load", result); 185 EXPECT_EQ("Image failed to load", result);
185 186
186 GURL nonexistent_resource( 187 GURL nonexistent_resource(
187 test_server()->GetURL( 188 test_server()->GetURL(
188 "files/extensions/api_test/extension_resource_request_policy/" 189 "files/extensions/api_test/extension_resource_request_policy/"
189 "web_accessible/nonexistent_resource.html")); 190 "web_accessible/nonexistent_resource.html"));
190 ui_test_utils::NavigateToURL(browser(), nonexistent_resource); 191 ui_test_utils::NavigateToURL(browser(), nonexistent_resource);
191 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 192 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
192 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 193 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
193 L"window.domAutomationController.send(document.title)", 194 L"window.domAutomationController.send(document.title)",
194 &result)); 195 &result));
195 EXPECT_EQ("Image failed to load", result); 196 EXPECT_EQ("Image failed to load", result);
196 197
197 GURL nonaccessible_cer_resource( 198 GURL nonaccessible_cer_resource(
198 test_server()->GetURL( 199 test_server()->GetURL(
199 "files/extensions/api_test/extension_resource_request_policy/" 200 "files/extensions/api_test/extension_resource_request_policy/"
200 "web_accessible/nonaccessible_chrome_resource_scheme.html")); 201 "web_accessible/nonaccessible_chrome_resource_scheme.html"));
201 ui_test_utils::NavigateToURL(browser(), nonaccessible_cer_resource); 202 ui_test_utils::NavigateToURL(browser(), nonaccessible_cer_resource);
202 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString( 203 ASSERT_TRUE(ui_test_utils::ExecuteJavaScriptAndExtractString(
203 browser()->GetActiveWebContents()->GetRenderViewHost(), L"", 204 chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"",
204 L"window.domAutomationController.send(document.title)", 205 L"window.domAutomationController.send(document.title)",
205 &result)); 206 &result));
206 EXPECT_EQ("Loading CER:// failed.", result); 207 EXPECT_EQ("Loading CER:// failed.", result);
207 } 208 }
208 209
209 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, Iframe) { 210 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, Iframe) {
210 // Load another extension, which the test one shouldn't be able to get 211 // Load another extension, which the test one shouldn't be able to get
211 // resources from. 212 // resources from.
212 ASSERT_TRUE(LoadExtension(test_data_dir_ 213 ASSERT_TRUE(LoadExtension(test_data_dir_
213 .AppendASCII("extension_resource_request_policy") 214 .AppendASCII("extension_resource_request_policy")
214 .AppendASCII("inaccessible"))); 215 .AppendASCII("inaccessible")));
215 EXPECT_TRUE(RunExtensionSubtest( 216 EXPECT_TRUE(RunExtensionSubtest(
216 "extension_resource_request_policy/web_accessible", 217 "extension_resource_request_policy/web_accessible",
217 "iframe.html")); 218 "iframe.html"));
218 } 219 }
219 220
220 #if defined(OS_MACOSX) 221 #if defined(OS_MACOSX)
221 #define MAYBE_ExtensionAccessibleResources FLAKY_ExtensionAccessibleResources 222 #define MAYBE_ExtensionAccessibleResources FLAKY_ExtensionAccessibleResources
222 #else 223 #else
223 #define MAYBE_ExtensionAccessibleResources ExtensionAccessibleResources 224 #define MAYBE_ExtensionAccessibleResources ExtensionAccessibleResources
224 #endif 225 #endif
225 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest, 226 IN_PROC_BROWSER_TEST_F(ExtensionResourceRequestPolicyTest,
226 MAYBE_ExtensionAccessibleResources) { 227 MAYBE_ExtensionAccessibleResources) {
227 ASSERT_TRUE(RunExtensionSubtest("accessible_cer", "main.html")) << message_; 228 ASSERT_TRUE(RunExtensionSubtest("accessible_cer", "main.html")) << message_;
228 } 229 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_process_manager.cc ('k') | chrome/browser/extensions/extension_startup_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698