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

Unified Diff: chrome/browser/ui/search/instant_browsertest.cc

Issue 13516002: Whitelist Instant processes for content settings (Closed) Base URL: http://git.chromium.org/chromium/src.git@omniboxtest
Patch Set: 4 Created 7 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/search/instant_browsertest.cc
diff --git a/chrome/browser/ui/search/instant_browsertest.cc b/chrome/browser/ui/search/instant_browsertest.cc
index 2e4beb2907af1009b06ff1c340158222fbcd2e8b..f9a577f4ae8d75928adeed37f613cb60e9131070 100644
--- a/chrome/browser/ui/search/instant_browsertest.cc
+++ b/chrome/browser/ui/search/instant_browsertest.cc
@@ -18,6 +18,7 @@
#include "chrome/browser/ui/search/instant_overlay.h"
#include "chrome/browser/ui/search/instant_test_utils.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
+#include "chrome/common/content_settings_types.h"
#include "chrome/common/url_constants.h"
#include "chrome/test/base/in_process_browser_test.h"
#include "chrome/test/base/interactive_test_utils.h"
@@ -1001,3 +1002,36 @@ IN_PROC_BROWSER_TEST_F(InstantTest, ProcessIsolation) {
EXPECT_FALSE(instant_service->IsInstantProcess(
active_tab->GetRenderProcessHost()->GetID()));
}
+
+IN_PROC_BROWSER_TEST_F(InstantTest, ContentSettingsWhitelist) {
+ // Creates a 2x2 pixel image element and checks its height after it loads.
+ const char* kImageRenderScript =
+ "var testImage = document.createElement('img');"
+ "testImage.onload = function () {"
+ " domAutomationController.send(testImage.height > 0); };"
+ "testImage.src = 'data:image/png;base64,Qk1GAAAAAAAAADYAAAAoAAAAAgAAAAIA"
+ "AAABABgAAAAAAAAAAADEDgAAxA4AAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAA/w==';";
+
+ Profile* profile = browser()->profile();
+
+ // Block images through content settings.
+ profile->GetHostContentSettingsMap()->SetDefaultContentSetting(
+ CONTENT_SETTINGS_TYPE_IMAGES, CONTENT_SETTING_BLOCK);
+
+ ASSERT_NO_FATAL_FAILURE(SetupInstant(browser()));
+ FocusOmniboxAndWaitForInstantSupport();
+
+ InstantService* instant_service =
+ InstantServiceFactory::GetForProfile(profile);
+ ASSERT_NE(static_cast<InstantService*>(NULL), instant_service);
+
+ // Make sure this is an Instant process.
+ content::WebContents* overlay = instant()->GetOverlayContents();
+ EXPECT_TRUE(instant_service->IsInstantProcess(
+ overlay->GetRenderProcessHost()->GetID()));
+
+ bool result;
+ EXPECT_TRUE(ExecuteScriptAndExtractBool(overlay, kImageRenderScript,
+ &result));
+ EXPECT_TRUE(result);
+}
« no previous file with comments | « no previous file | chrome/renderer/content_settings_observer.cc » ('j') | chrome/renderer/content_settings_observer.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698