0

Remove handwritten operator== for CookieAccessResult

And make it a friend non-member method, per the style guide.

This CL fixes the fact that `scope_semantics` was (unintentionally?)
ignored by operator==.

Change-Id: I293ee2b583169f4054d23a7e4f40f33bbadd345a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6395098
Reviewed-by: Adam Rice <ricea@chromium.org>
Auto-Submit: Chris Fredrickson <cfredric@chromium.org>
Reviewed-by: Rakina Zata Amni <rakina@chromium.org>
Commit-Queue: Adam Rice <ricea@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1438846}
This commit is contained in:
Chris Fredrickson
2025-03-27 10:21:52 -07:00
committed by Chromium LUCI CQ
parent 5b9bbe711a
commit d652105aa4
3 changed files with 30 additions and 34 deletions

@@ -648,7 +648,7 @@ IN_PROC_BROWSER_TEST_F(
/*warnings=*/{net::CookieInclusionStatus::WarningReason::
WARN_PORT_MISMATCH}),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, true)};
net::CookieScopeSemantics::NONLEGACY, true)};
EXPECT_THAT(cookie_tracker.cookie_accesses(),
testing::ElementsAre(
// a.test/title1.html
@@ -677,7 +677,7 @@ IN_PROC_BROWSER_TEST_F(
net::CookieAccessResult(net::CookieEffectiveSameSite::NO_RESTRICTION,
expected_third_party_inclusion_status,
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, true)};
net::CookieScopeSemantics::NONLEGACY, true)};
EXPECT_THAT(cookie_tracker.cookie_accesses(),
testing::ElementsAre(
// a.test iframe under b.test

@@ -471,7 +471,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTest,
net::CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
net::CookieInclusionStatus(),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, false)}));
net::CookieScopeSemantics::NONLEGACY, false)}));
cookie_tracker.cookie_accesses().clear();
}
@@ -529,7 +529,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTest,
net::CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
net::CookieInclusionStatus(),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, false)}));
net::CookieScopeSemantics::NONLEGACY, false)}));
cookie_tracker.cookie_accesses().clear();
// 2) Navigate to another url on the same site and expect a notification about
@@ -551,7 +551,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTest,
net::CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
net::CookieInclusionStatus(),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, false)}));
net::CookieScopeSemantics::NONLEGACY, false)}));
cookie_tracker.cookie_accesses().clear();
}
@@ -619,7 +619,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTest,
net::CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
net::CookieInclusionStatus(),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, false)},
net::CookieScopeSemantics::NONLEGACY, false)},
CookieAccess{CookieAccessDetails::Type::kRead,
ContextType::kNavigation,
{},
@@ -632,7 +632,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTest,
net::CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
net::CookieInclusionStatus(),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, false)}));
net::CookieScopeSemantics::NONLEGACY, false)}));
cookie_tracker.cookie_accesses().clear();
}
@@ -697,7 +697,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTest,
net::CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
net::CookieInclusionStatus(),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, false)},
net::CookieScopeSemantics::NONLEGACY, false)},
CookieAccess{CookieAccessDetails::Type::kRead, ContextType::kFrame,
cookie_tracker.frame_id(frame_id_index), -1, url2_image,
first_party_url, "foo", "bar",
@@ -705,7 +705,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTest,
net::CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
net::CookieInclusionStatus(),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, false)}));
net::CookieScopeSemantics::NONLEGACY, false)}));
cookie_tracker.cookie_accesses().clear();
}
@@ -744,7 +744,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTest,
net::CookieEffectiveSameSite::LAX_MODE_ALLOW_UNSAFE,
net::CookieInclusionStatus(),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, false)}));
net::CookieScopeSemantics::NONLEGACY, false)}));
cookie_tracker.cookie_accesses().clear();
}
@@ -782,8 +782,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTestWithTPCD,
"foo=bar;SameSite=None;Secure"));
EXPECT_TRUE(NavigateToURL(web_contents(), url_a_check_cookie));
cookie_tracker.WaitForCookies(1);
EXPECT_THAT(
cookie_tracker.cookie_accesses(),
EXPECT_THAT(cookie_tracker.cookie_accesses(),
testing::ElementsAre(CookieAccess{
CookieAccessDetails::Type::kRead,
ContextType::kNavigation,
@@ -793,10 +792,11 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTestWithTPCD,
url_a,
"foo",
"bar",
net::CookieAccessResult(net::CookieEffectiveSameSite::NO_RESTRICTION,
net::CookieAccessResult(
net::CookieEffectiveSameSite::NO_RESTRICTION,
net::CookieInclusionStatus(),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, true)}));
net::CookieScopeSemantics::NONLEGACY, true)}));
cookie_tracker.cookie_accesses().clear();
// 2) Navigate to |url_b_cross_site|. This page should load b.test(a.test)
@@ -819,7 +819,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTestWithTPCD,
net::CookieInclusionStatus::ExclusionReason::
EXCLUDE_THIRD_PARTY_PHASEOUT}),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, true)),
net::CookieScopeSemantics::NONLEGACY, true)),
MatchesCookieAccess(
CookieAccessDetails::Type::kRead, testing::_, testing::_,
testing::_, testing::_, testing::_, "foo", "bar",
@@ -830,7 +830,7 @@ IN_PROC_BROWSER_TEST_F(WebContentsObserverBrowserTestWithTPCD,
net::CookieInclusionStatus::ExclusionReason::
EXCLUDE_THIRD_PARTY_PHASEOUT}),
net::CookieAccessSemantics::NONLEGACY,
net::CookieScopeSemantics::UNKNOWN, true))));
net::CookieScopeSemantics::NONLEGACY, true))));
cookie_tracker.cookie_accesses().clear();
}
namespace {

@@ -34,13 +34,8 @@ struct NET_EXPORT CookieAccessResult {
~CookieAccessResult();
bool operator==(const CookieAccessResult& other) const {
return status == other.status &&
effective_same_site == other.effective_same_site &&
access_semantics == other.access_semantics &&
is_allowed_to_access_secure_cookies ==
other.is_allowed_to_access_secure_cookies;
}
friend bool operator==(const CookieAccessResult&,
const CookieAccessResult&) = default;
CookieInclusionStatus status;
CookieEffectiveSameSite effective_same_site =
@@ -59,6 +54,7 @@ inline void PrintTo(const CookieAccessResult& car, std::ostream* os) {
PrintTo(car.status, os);
*os << " }, effective_same_site=" << static_cast<int>(car.effective_same_site)
<< ", access_semantics=" << static_cast<int>(car.access_semantics)
<< ", scope_semantics=" << static_cast<int>(car.scope_semantics)
<< ", is_allowed_to_access_secure_cookies="
<< car.is_allowed_to_access_secure_cookies << " }";
}