Commit 53ef3ccc authored by Karan Bhatia's avatar Karan Bhatia Committed by Commit Bot

Make WebRequestInfo::type non-optional.

It should never be null.

BUG=None

Change-Id: Ic1e72b42e4664177cd42af61d38caa4930c5713c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1737741
Commit-Queue: Devlin <rdevlin.cronin@chromium.org>
Auto-Submit: Karan Bhatia <karandeepb@chromium.org>
Reviewed-by: default avatarDevlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#684418}
parent 5894c31d
...@@ -77,8 +77,7 @@ flat_rule::ElementType GetElementType(const WebRequestInfo& request) { ...@@ -77,8 +77,7 @@ flat_rule::ElementType GetElementType(const WebRequestInfo& request) {
if (request.url.SchemeIsWSOrWSS()) if (request.url.SchemeIsWSOrWSS())
return flat_rule::ElementType_WEBSOCKET; return flat_rule::ElementType_WEBSOCKET;
return request.type.has_value() ? GetElementType(request.type.value()) return GetElementType(request.type);
: flat_rule::ElementType_OTHER;
} }
// Returns whether the request to |url| is third party to its |document_origin|. // Returns whether the request to |url| is third party to its |document_origin|.
......
...@@ -179,7 +179,7 @@ WebRequestInfoInitParams::WebRequestInfoInitParams( ...@@ -179,7 +179,7 @@ WebRequestInfoInitParams::WebRequestInfoInitParams(
else if (is_download) else if (is_download)
web_request_type = WebRequestResourceType::OTHER; web_request_type = WebRequestResourceType::OTHER;
else else
web_request_type = ToWebRequestResourceType(type.value()); web_request_type = ToWebRequestResourceType(type);
InitializeWebViewAndFrameData(navigation_ui_data.get()); InitializeWebViewAndFrameData(navigation_ui_data.get());
......
...@@ -62,7 +62,7 @@ struct WebRequestInfoInitParams { ...@@ -62,7 +62,7 @@ struct WebRequestInfoInitParams {
std::string method; std::string method;
bool is_navigation_request = false; bool is_navigation_request = false;
base::Optional<url::Origin> initiator; base::Optional<url::Origin> initiator;
base::Optional<content::ResourceType> type; content::ResourceType type = content::ResourceType::kSubResource;
WebRequestResourceType web_request_type = WebRequestResourceType::OTHER; WebRequestResourceType web_request_type = WebRequestResourceType::OTHER;
bool is_async = false; bool is_async = false;
net::HttpRequestHeaders extra_request_headers; net::HttpRequestHeaders extra_request_headers;
...@@ -123,9 +123,8 @@ struct WebRequestInfo { ...@@ -123,9 +123,8 @@ struct WebRequestInfo {
// initiate this request. // initiate this request.
ExtensionApiFrameIdMap::FrameData frame_data; ExtensionApiFrameIdMap::FrameData frame_data;
// The type of the request (e.g. main frame, subresource, XHR, etc). May have // The type of the request (e.g. main frame, subresource, XHR, etc).
// no value if the request did not originate from a ResourceDispatcher. const content::ResourceType type;
const base::Optional<content::ResourceType> type;
// A partially mirrored copy of |type| which is slightly less granular and // A partially mirrored copy of |type| which is slightly less granular and
// which also identifies WebSocket requests separately from other types. // which also identifies WebSocket requests separately from other types.
......
...@@ -336,7 +336,7 @@ PermissionsData::PageAccess WebRequestPermissions::CanExtensionAccessURL( ...@@ -336,7 +336,7 @@ PermissionsData::PageAccess WebRequestPermissions::CanExtensionAccessURL(
bool crosses_incognito, bool crosses_incognito,
HostPermissionsCheck host_permissions_check, HostPermissionsCheck host_permissions_check,
const base::Optional<url::Origin>& initiator, const base::Optional<url::Origin>& initiator,
const base::Optional<content::ResourceType>& resource_type) { content::ResourceType resource_type) {
return CanExtensionAccessURLInternal( return CanExtensionAccessURLInternal(
permission_helper, extension_id, url, tab_id, crosses_incognito, permission_helper, extension_id, url, tab_id, crosses_incognito,
host_permissions_check, initiator, resource_type); host_permissions_check, initiator, resource_type);
......
...@@ -56,7 +56,7 @@ class WebRequestPermissions { ...@@ -56,7 +56,7 @@ class WebRequestPermissions {
bool crosses_incognito, bool crosses_incognito,
HostPermissionsCheck host_permissions_check, HostPermissionsCheck host_permissions_check,
const base::Optional<url::Origin>& initiator, const base::Optional<url::Origin>& initiator,
const base::Optional<content::ResourceType>& resource_type); content::ResourceType resource_type);
static bool CanExtensionAccessInitiator( static bool CanExtensionAccessInitiator(
extensions::PermissionHelper* permission_helper, extensions::PermissionHelper* permission_helper,
......
...@@ -209,8 +209,7 @@ TEST_F(ExtensionWebRequestPermissionsTest, ...@@ -209,8 +209,7 @@ TEST_F(ExtensionWebRequestPermissionsTest,
auto get_access = [extension, this]( auto get_access = [extension, this](
const GURL& url, const GURL& url,
const base::Optional<url::Origin>& initiator, const base::Optional<url::Origin>& initiator,
const base::Optional<content::ResourceType>& const content::ResourceType resource_type) {
resource_type) {
constexpr int kTabId = 42; constexpr int kTabId = 42;
constexpr WebRequestPermissions::HostPermissionsCheck kPermissionsCheck = constexpr WebRequestPermissions::HostPermissionsCheck kPermissionsCheck =
WebRequestPermissions::REQUIRE_HOST_PERMISSION_FOR_URL; WebRequestPermissions::REQUIRE_HOST_PERMISSION_FOR_URL;
...@@ -228,9 +227,8 @@ TEST_F(ExtensionWebRequestPermissionsTest, ...@@ -228,9 +227,8 @@ TEST_F(ExtensionWebRequestPermissionsTest,
GURL urls[] = {example_com, chromium_org}; GURL urls[] = {example_com, chromium_org};
base::Optional<url::Origin> initiators[] = {base::nullopt, example_com_origin, base::Optional<url::Origin> initiators[] = {base::nullopt, example_com_origin,
chromium_org_origin}; chromium_org_origin};
base::Optional<content::ResourceType> resource_types[] = { content::ResourceType resource_types[] = {content::ResourceType::kSubResource,
base::nullopt, content::ResourceType::kSubResource, content::ResourceType::kMainFrame};
content::ResourceType::kMainFrame};
// With all permissions withheld, the result of any request should be // With all permissions withheld, the result of any request should be
// kWithheld. // kWithheld.
...@@ -270,8 +268,6 @@ TEST_F(ExtensionWebRequestPermissionsTest, ...@@ -270,8 +268,6 @@ TEST_F(ExtensionWebRequestPermissionsTest,
EXPECT_EQ(PermissionsData::PageAccess::kAllowed, EXPECT_EQ(PermissionsData::PageAccess::kAllowed,
get_access(example_com, chromium_org_origin, get_access(example_com, chromium_org_origin,
content::ResourceType::kSubResource)); content::ResourceType::kSubResource));
EXPECT_EQ(PermissionsData::PageAccess::kAllowed,
get_access(example_com, chromium_org_origin, base::nullopt));
EXPECT_EQ(PermissionsData::PageAccess::kWithheld, EXPECT_EQ(PermissionsData::PageAccess::kWithheld,
get_access(example_com, chromium_org_origin, get_access(example_com, chromium_org_origin,
content::ResourceType::kSubFrame)); content::ResourceType::kSubFrame));
...@@ -322,8 +318,7 @@ TEST_F(ExtensionWebRequestPermissionsTest, ...@@ -322,8 +318,7 @@ TEST_F(ExtensionWebRequestPermissionsTest,
auto get_access = [extension, this]( auto get_access = [extension, this](
const GURL& url, const GURL& url,
const base::Optional<url::Origin>& initiator, const base::Optional<url::Origin>& initiator,
const base::Optional<content::ResourceType>& content::ResourceType resource_type) {
resource_type) {
constexpr int kTabId = 42; constexpr int kTabId = 42;
constexpr WebRequestPermissions::HostPermissionsCheck kPermissionsCheck = constexpr WebRequestPermissions::HostPermissionsCheck kPermissionsCheck =
WebRequestPermissions::REQUIRE_HOST_PERMISSION_FOR_URL_AND_INITIATOR; WebRequestPermissions::REQUIRE_HOST_PERMISSION_FOR_URL_AND_INITIATOR;
...@@ -380,8 +375,6 @@ TEST_F(ExtensionWebRequestPermissionsTest, ...@@ -380,8 +375,6 @@ TEST_F(ExtensionWebRequestPermissionsTest,
EXPECT_EQ(get_access(test_case.url, test_case.initiator, EXPECT_EQ(get_access(test_case.url, test_case.initiator,
content::ResourceType::kSubResource), content::ResourceType::kSubResource),
test_case.expected_access_subresource); test_case.expected_access_subresource);
EXPECT_EQ(get_access(test_case.url, test_case.initiator, base::nullopt),
test_case.expected_access_subresource);
EXPECT_EQ(get_access(test_case.url, test_case.initiator, EXPECT_EQ(get_access(test_case.url, test_case.initiator,
content::ResourceType::kSubFrame), content::ResourceType::kSubFrame),
test_case.expected_access_navigation); test_case.expected_access_navigation);
......
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