Commit 947b1951 authored by Illia Klimov's avatar Illia Klimov Committed by Commit Bot

Display incognito origins in Category Settings.

This patch fixes a bug that prevents displaying incognito origins in
Category Settings.

Bug: 1073942
Change-Id: I4c7e95dcabc492c947149bc11ce74749e7253656
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2237971Reviewed-by: default avatarEsmael Elmoslimany <aee@chromium.org>
Reviewed-by: default avatarKamila Hasanbega <hkamila@chromium.org>
Commit-Queue: Illia Klimov <elklm@google.com>
Cr-Commit-Position: refs/heads/master@{#776893}
parent b52e656c
......@@ -959,7 +959,7 @@ void SiteSettingsHandler::HandleGetExceptionList(const base::ListValue* args) {
if (incognito && incognito != profile_) {
extension_registry = extensions::ExtensionRegistry::Get(incognito);
site_settings::GetExceptionsForContentType(
content_type, profile_, extension_registry, web_ui(),
content_type, incognito, extension_registry, web_ui(),
/*incognito=*/true, exceptions.get());
}
......
......@@ -118,6 +118,7 @@ class SiteSettingsHandler
FRIEND_TEST_ALL_PREFIXES(SiteSettingsHandlerTest, GetAndSetForInvalidURLs);
FRIEND_TEST_ALL_PREFIXES(SiteSettingsHandlerTest, GetAndSetOriginPermissions);
FRIEND_TEST_ALL_PREFIXES(SiteSettingsHandlerTest, Incognito);
FRIEND_TEST_ALL_PREFIXES(SiteSettingsHandlerTest, IncognitoExceptions);
FRIEND_TEST_ALL_PREFIXES(SiteSettingsHandlerTest,
ResetCategoryPermissionForEmbargoedOrigins);
FRIEND_TEST_ALL_PREFIXES(SiteSettingsHandlerTest, Origins);
......
......@@ -999,6 +999,74 @@ TEST_F(SiteSettingsHandlerTest, InstalledApps) {
EXPECT_FALSE(origin_info->FindKey("isInstalled")->GetBool());
}
TEST_F(SiteSettingsHandlerTest, IncognitoExceptions) {
constexpr char kOriginToBlock[] = "https://www.blocked.com:443";
CreateIncognitoProfile();
{
base::ListValue set_args;
set_args.AppendString(kOriginToBlock); // Primary pattern.
set_args.AppendString(kOriginToBlock); // Secondary pattern.
set_args.AppendString(kNotifications);
set_args.AppendString(
content_settings::ContentSettingToString(CONTENT_SETTING_BLOCK));
set_args.AppendBoolean(true); // Incognito.
handler()->HandleSetCategoryPermissionForPattern(&set_args);
base::ListValue get_exception_list_args;
get_exception_list_args.AppendString(kCallbackId);
get_exception_list_args.AppendString(kNotifications);
handler()->HandleGetExceptionList(&get_exception_list_args);
const content::TestWebUI::CallData& data = *web_ui()->call_data().back();
const base::ListValue* exceptions;
ASSERT_TRUE(data.arg3()->GetAsList(&exceptions));
ASSERT_EQ(1U, exceptions->GetSize());
const base::DictionaryValue* exception;
ASSERT_TRUE(exceptions->GetDictionary(0, &exception));
std::string origin;
ASSERT_TRUE(exception->GetString(site_settings::kOrigin, &origin));
EXPECT_EQ(kOriginToBlock, origin);
}
{
base::ListValue set_args;
set_args.AppendString(kOriginToBlock); // Primary pattern.
set_args.AppendString(kOriginToBlock); // Secondary pattern.
set_args.AppendString(kNotifications);
set_args.AppendString(
content_settings::ContentSettingToString(CONTENT_SETTING_BLOCK));
set_args.AppendBoolean(false); // Incognito.
handler()->HandleSetCategoryPermissionForPattern(&set_args);
base::ListValue get_exception_list_args;
get_exception_list_args.AppendString(kCallbackId);
get_exception_list_args.AppendString(kNotifications);
handler()->HandleGetExceptionList(&get_exception_list_args);
const content::TestWebUI::CallData& data = *web_ui()->call_data().back();
const base::ListValue* exceptions;
ASSERT_TRUE(data.arg3()->GetAsList(&exceptions));
ASSERT_EQ(2U, exceptions->GetSize());
const base::DictionaryValue* exception;
ASSERT_TRUE(exceptions->GetDictionary(0, &exception));
std::string origin;
ASSERT_TRUE(exception->GetString(site_settings::kOrigin, &origin));
ASSERT_EQ(kOriginToBlock, origin);
ASSERT_TRUE(exceptions->GetDictionary(1, &exception));
ASSERT_TRUE(exception->GetString(site_settings::kOrigin, &origin));
EXPECT_EQ(kOriginToBlock, origin);
}
DestroyIncognitoProfile();
}
TEST_F(SiteSettingsHandlerTest, ResetCategoryPermissionForEmbargoedOrigins) {
constexpr char kOriginToBlock[] = "https://www.blocked.com:443";
constexpr char kOriginToEmbargo[] = "https://embargoed.co.uk";
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment