| 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 #include "base/command_line.h" | 5 #include "base/command_line.h" |
| 6 #include "base/logging.h" | 6 #include "base/logging.h" |
| 7 #include "build/build_config.h" | 7 #include "build/build_config.h" |
| 8 #include "chrome/browser/extensions/extension_apitest.h" | 8 #include "chrome/browser/extensions/extension_apitest.h" |
| 9 #include "chrome/browser/ui/browser.h" | 9 #include "chrome/browser/ui/browser.h" |
| 10 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 10 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
| (...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 342 ASSERT_TRUE(content::ExecuteScript(web_contents, "navigateFrameNow()")); | 342 ASSERT_TRUE(content::ExecuteScript(web_contents, "navigateFrameNow()")); |
| 343 WaitForLoadStop(web_contents); | 343 WaitForLoadStop(web_contents); |
| 344 EXPECT_NE(private_page, web_contents->GetLastCommittedURL()); | 344 EXPECT_NE(private_page, web_contents->GetLastCommittedURL()); |
| 345 std::string content; | 345 std::string content; |
| 346 EXPECT_TRUE(ExecuteScriptAndExtractString( | 346 EXPECT_TRUE(ExecuteScriptAndExtractString( |
| 347 ChildFrameAt(web_contents->GetMainFrame(), 0), | 347 ChildFrameAt(web_contents->GetMainFrame(), 0), |
| 348 "domAutomationController.send(document.body.innerText)", &content)); | 348 "domAutomationController.send(document.body.innerText)", &content)); |
| 349 | 349 |
| 350 // The iframe should not load |private_page|, which is not web-accessible. | 350 // The iframe should not load |private_page|, which is not web-accessible. |
| 351 // | 351 // |
| 352 // TODO(alexmos): The failure mode differs on whether or not | 352 // TODO(alexmos): Make this check stricter, as extensions are now fully |
| 353 // --isolate-extensions is used: if it is on, the request is canceled and we | 353 // isolated. The failure mode is that the request is canceled and we stay on |
| 354 // stay on public.html (see https://crbug.com/656752), and if it's off, the | 354 // public.html (see https://crbug.com/656752). |
| 355 // request is blocked in ExtensionNavigationThrottle, which loads an error | |
| 356 // page into the iframe. This check handles both cases, but we should make | |
| 357 // the check stricter once --isolate-extensions is on by default. | |
| 358 EXPECT_NE("Private", content); | 355 EXPECT_NE("Private", content); |
| 359 } | 356 } |
| OLD | NEW |