Index: chrome/browser/ssl/security_state_tab_helper_browser_tests.cc |
diff --git a/chrome/browser/ssl/security_state_tab_helper_browser_tests.cc b/chrome/browser/ssl/security_state_tab_helper_browser_tests.cc |
index 21d269b570b18bd99b873ee7fbcc72f7ee8c4dc4..4ff9a95d6dc03efa19cd40d3572248d890b3c2ae 100644 |
--- a/chrome/browser/ssl/security_state_tab_helper_browser_tests.cc |
+++ b/chrome/browser/ssl/security_state_tab_helper_browser_tests.cc |
@@ -762,6 +762,28 @@ IN_PROC_BROWSER_TEST_F(SecurityStateTabHelperTest, BrokenHTTPS) { |
true /* expect cert status error */); |
} |
+// Tests that the security level of data: URLs is always downgraded to |
+// HTTP_SHOW_WARNING. |
+IN_PROC_BROWSER_TEST_F(SecurityStateTabHelperTest, |
+ SecurityLevelDowngradedOnDataUrl) { |
+ content::WebContents* contents = |
+ browser()->tab_strip_model()->GetActiveWebContents(); |
+ ASSERT_TRUE(contents); |
+ |
+ SecurityStateTabHelper* helper = |
+ SecurityStateTabHelper::FromWebContents(contents); |
+ ASSERT_TRUE(helper); |
+ |
+ ui_test_utils::NavigateToURL(browser(), GURL("data:text/html,<html></html>")); |
+ security_state::SecurityInfo security_info; |
+ helper->GetSecurityInfo(&security_info); |
+ EXPECT_EQ(security_state::HTTP_SHOW_WARNING, security_info.security_level); |
+ |
+ content::NavigationEntry* entry = contents->GetController().GetVisibleEntry(); |
+ ASSERT_TRUE(entry); |
+ EXPECT_EQ(content::SSLStatus::NORMAL_CONTENT, entry->GetSSL().content_status); |
+} |
+ |
const char kReportURI[] = "https://report-hpkp.test"; |
class PKPModelClientTest : public SecurityStateTabHelperTest { |