Index: content/browser/site_instance_impl_unittest.cc |
diff --git a/content/browser/site_instance_impl_unittest.cc b/content/browser/site_instance_impl_unittest.cc |
index f76be5ee5b7da0760b09238f98165ff68df4bc13..897a09c71516a42843f8ee6741773c5d87c5ee14 100644 |
--- a/content/browser/site_instance_impl_unittest.cc |
+++ b/content/browser/site_instance_impl_unittest.cc |
@@ -372,6 +372,7 @@ TEST_F(SiteInstanceTest, IsSameWebSite) { |
GURL url_foo_https = GURL("https://foo/a.html"); |
GURL url_foo_port = GURL("http://foo:8080/a.html"); |
GURL url_javascript = GURL("javascript:alert(1);"); |
+ GURL url_blank = GURL(url::kAboutBlankURL); |
// Same scheme and port -> same site. |
EXPECT_TRUE(SiteInstance::IsSameWebSite(NULL, url_foo, url_foo2)); |
@@ -388,6 +389,16 @@ TEST_F(SiteInstanceTest, IsSameWebSite) { |
EXPECT_TRUE(SiteInstance::IsSameWebSite(NULL, url_javascript, url_foo_https)); |
EXPECT_TRUE(SiteInstance::IsSameWebSite(NULL, url_javascript, url_foo_port)); |
+ // Navigating to a blank page is considered the same site. |
+ EXPECT_TRUE(SiteInstance::IsSameWebSite(NULL, url_foo, url_blank)); |
+ EXPECT_TRUE(SiteInstance::IsSameWebSite(NULL, url_foo_https, url_blank)); |
+ EXPECT_TRUE(SiteInstance::IsSameWebSite(NULL, url_foo_port, url_blank)); |
+ |
+ // Navigating from a blank site is not considered to be the same site. |
+ EXPECT_FALSE(SiteInstance::IsSameWebSite(NULL, url_blank, url_foo)); |
+ EXPECT_FALSE(SiteInstance::IsSameWebSite(NULL, url_blank, url_foo_https)); |
+ EXPECT_FALSE(SiteInstance::IsSameWebSite(NULL, url_blank, url_foo_port)); |
+ |
DrainMessageLoops(); |
} |