123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- // Copyright 2021 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #include "net/cookies/cookie_options.h"
- #include "testing/gtest/include/gtest/gtest.h"
- namespace net {
- namespace {
- TEST(CookieOptionsTest, SameSiteCookieContextType) {
- using ContextType = CookieOptions::SameSiteCookieContext::ContextType;
- EXPECT_EQ("0", ::testing::PrintToString(ContextType::CROSS_SITE));
- EXPECT_EQ("1",
- ::testing::PrintToString(ContextType::SAME_SITE_LAX_METHOD_UNSAFE));
- EXPECT_EQ("2", ::testing::PrintToString(ContextType::SAME_SITE_LAX));
- EXPECT_EQ("3", ::testing::PrintToString(ContextType::SAME_SITE_STRICT));
- }
- TEST(CookieOptionsTest, SameSiteCookieContext) {
- using SameSiteCookieContext = CookieOptions::SameSiteCookieContext;
- SameSiteCookieContext cross_cross(
- SameSiteCookieContext::ContextType::CROSS_SITE);
- SameSiteCookieContext lax_lax(
- SameSiteCookieContext::ContextType::SAME_SITE_LAX);
- SameSiteCookieContext strict_strict(
- SameSiteCookieContext::ContextType::SAME_SITE_STRICT);
- SameSiteCookieContext strict_cross(
- SameSiteCookieContext::ContextType::SAME_SITE_STRICT,
- SameSiteCookieContext::ContextType::CROSS_SITE);
- SameSiteCookieContext strict_lax(
- SameSiteCookieContext::ContextType::SAME_SITE_STRICT,
- SameSiteCookieContext::ContextType::SAME_SITE_LAX);
- SameSiteCookieContext lax_cross(
- SameSiteCookieContext::ContextType::SAME_SITE_LAX,
- SameSiteCookieContext::ContextType::CROSS_SITE);
- SameSiteCookieContext::ContextMetadata metadata1;
- metadata1.cross_site_redirect_downgrade = SameSiteCookieContext::
- ContextMetadata::ContextDowngradeType::kStrictToLax;
- metadata1.redirect_type_bug_1221316 = SameSiteCookieContext::ContextMetadata::
- ContextRedirectTypeBug1221316::kPartialSameSiteRedirect;
- SameSiteCookieContext::ContextMetadata metadata2;
- metadata2.cross_site_redirect_downgrade = SameSiteCookieContext::
- ContextMetadata::ContextDowngradeType::kStrictToLax;
- metadata2.redirect_type_bug_1221316 = SameSiteCookieContext::ContextMetadata::
- ContextRedirectTypeBug1221316::kPartialSameSiteRedirect;
- SameSiteCookieContext context_with_metadata(
- SameSiteCookieContext::ContextType::SAME_SITE_STRICT,
- SameSiteCookieContext::ContextType::SAME_SITE_STRICT, metadata1,
- metadata2);
- EXPECT_EQ(
- "{ context: 0, schemeful_context: 0, "
- "metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 }, "
- "schemeful_metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 } }",
- ::testing::PrintToString(cross_cross));
- EXPECT_EQ(
- "{ context: 2, schemeful_context: 2, "
- "metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 }, "
- "schemeful_metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 } }",
- ::testing::PrintToString(lax_lax));
- EXPECT_EQ(
- "{ context: 3, schemeful_context: 3, "
- "metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 }, "
- "schemeful_metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 } }",
- ::testing::PrintToString(strict_strict));
- EXPECT_EQ(
- "{ context: 3, schemeful_context: 0, "
- "metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 }, "
- "schemeful_metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 } }",
- ::testing::PrintToString(strict_cross));
- EXPECT_EQ(
- "{ context: 3, schemeful_context: 2, "
- "metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 }, "
- "schemeful_metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 } }",
- ::testing::PrintToString(strict_lax));
- EXPECT_EQ(
- "{ context: 2, schemeful_context: 0, "
- "metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 }, "
- "schemeful_metadata: { cross_site_redirect_downgrade: 0, "
- "redirect_type_bug_1221316: 0 } }",
- ::testing::PrintToString(lax_cross));
- EXPECT_EQ(
- "{ context: 3, schemeful_context: 3, "
- "metadata: { cross_site_redirect_downgrade: 1, "
- "redirect_type_bug_1221316: 3 }, "
- "schemeful_metadata: { cross_site_redirect_downgrade: 1, "
- "redirect_type_bug_1221316: 3 } }",
- ::testing::PrintToString(context_with_metadata));
- }
- } // namespace
- } // namespace net
|