summaryrefslogtreecommitdiffstats
path: root/chrome/browser/apps
diff options
context:
space:
mode:
authorlazyboy <lazyboy@chromium.org>2016-02-24 19:12:18 -0800
committerCommit bot <commit-bot@chromium.org>2016-02-25 03:13:28 +0000
commit04b75d3ac2b44bfefa7409e8a36c87c2144069f1 (patch)
tree7a993707748a21814632ef6909de91406b9d2000 /chrome/browser/apps
parent0452dd715e60bf0e081c80df3ab9eea993c43ef0 (diff)
downloadchromium_src-04b75d3ac2b44bfefa7409e8a36c87c2144069f1.zip
chromium_src-04b75d3ac2b44bfefa7409e8a36c87c2144069f1.tar.gz
chromium_src-04b75d3ac2b44bfefa7409e8a36c87c2144069f1.tar.bz2
Disallow loading v2 apps in tabs.
BUG=585570 Review URL: https://codereview.chromium.org/1704823002 Cr-Commit-Position: refs/heads/master@{#377483}
Diffstat (limited to 'chrome/browser/apps')
-rw-r--r--chrome/browser/apps/app_browsertest.cc21
1 files changed, 16 insertions, 5 deletions
diff --git a/chrome/browser/apps/app_browsertest.cc b/chrome/browser/apps/app_browsertest.cc
index ebe77d9..5dc839e 100644
--- a/chrome/browser/apps/app_browsertest.cc
+++ b/chrome/browser/apps/app_browsertest.cc
@@ -259,6 +259,7 @@ class PlatformAppWithFileBrowserTest: public PlatformAppBrowserTest {
}
};
+const char kChromiumURL[] = "http://chromium.org";
#if !defined(OS_CHROMEOS)
const char kTestFilePath[] = "platform_apps/launch_files/test.txt";
#endif
@@ -432,17 +433,27 @@ IN_PROC_BROWSER_TEST_F(PlatformAppBrowserTest, AppWithContextMenuClicked) {
}
IN_PROC_BROWSER_TEST_F(PlatformAppBrowserTest, DisallowNavigation) {
- TabsAddedNotificationObserver observer(2);
+ TabsAddedNotificationObserver observer(1);
ASSERT_TRUE(StartEmbeddedTestServer());
ASSERT_TRUE(RunPlatformAppTest("platform_apps/navigation")) << message_;
observer.Wait();
+ ASSERT_EQ(1U, observer.tabs().size());
+ EXPECT_EQ(GURL(kChromiumURL), observer.tabs()[0]->GetURL());
+}
+
+IN_PROC_BROWSER_TEST_F(PlatformAppBrowserTest,
+ DisallowBackgroundPageNavigation) {
+ // The test will try to open in app urls and external urls via clicking links
+ // and window.open(). Only the external urls should succeed in opening tabs.
+ TabsAddedNotificationObserver observer(2);
+ ASSERT_TRUE(RunPlatformAppTest("platform_apps/background_page_navigation")) <<
+ message_;
+ observer.Wait();
ASSERT_EQ(2U, observer.tabs().size());
- EXPECT_EQ(std::string(chrome::kExtensionInvalidRequestURL),
- observer.tabs()[0]->GetURL().spec());
- EXPECT_EQ("http://chromium.org/",
- observer.tabs()[1]->GetURL().spec());
+ EXPECT_EQ(GURL(kChromiumURL), observer.tabs()[0]->GetURL());
+ EXPECT_EQ(GURL(kChromiumURL), observer.tabs()[1]->GetURL());
}
// Failing on some Win and Linux buildbots. See crbug.com/354425.