Skip to content

Commit 4f0ebbc

Browse files
authored
Merge pull request #9774 from magento-cia/cia-2.4.9-alpha1-develop-bugfix-05022025
Cia 2.4.9-alpha1-develop Bugfix 05022025
2 parents 6117954 + 06587fc commit 4f0ebbc

File tree

2 files changed

+17
-18
lines changed

2 files changed

+17
-18
lines changed

lib/internal/Magento/Framework/Stdlib/Cookie/PhpCookieManager.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ class PhpCookieManager implements CookieManagerInterface
2828
{
2929
/**#@+
3030
* Constants for Cookie manager.
31-
* RFC 2109 - Page 15
31+
* RFC 2109 - Page 26
3232
* http://www.ietf.org/rfc/rfc6265.txt
3333
*/
3434
public const MAX_NUM_COOKIES = 50;
@@ -211,7 +211,7 @@ private function checkAbilityToSendCookie($name, $value)
211211

212212
$sizeOfCookie = $this->sizeOfCookie($name, $value);
213213

214-
if ($numCookies > self::MAX_NUM_COOKIES) {
214+
if ($numCookies > static::MAX_NUM_COOKIES) {
215215
$this->logger->warning(
216216
new Phrase('Unable to send the cookie. Maximum number of cookies would be exceeded.'),
217217
[
@@ -221,7 +221,7 @@ private function checkAbilityToSendCookie($name, $value)
221221
);
222222
}
223223

224-
if ($sizeOfCookie > self::MAX_COOKIE_SIZE) {
224+
if ($sizeOfCookie > static::MAX_COOKIE_SIZE) {
225225
throw new CookieSizeLimitReachedException(
226226
new Phrase(
227227
'Unable to send the cookie. Size of \'%name\' is %size bytes.',

lib/internal/Magento/Framework/Stdlib/Test/Unit/Cookie/PhpCookieManagerTest.php

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?php
22
/**
3-
* Copyright © Magento, Inc. All rights reserved.
4-
* See COPYING.txt for license details.
3+
* Copyright 2025 Adobe
4+
* All Rights Reserved.
55
*/
66
declare(strict_types=1);
77

@@ -60,9 +60,6 @@ class PhpCookieManagerTest extends TestCase
6060
public const COOKIE_HTTP_ONLY = true;
6161
public const COOKIE_NOT_HTTP_ONLY = false;
6262
public const COOKIE_EXPIRE_END_OF_SESSION = 0;
63-
private const MAX_NUM_COOKIES = 50;
64-
private const EXPIRE_NOW_TIME = 1;
65-
private const EXPIRE_AT_END_OF_SESSION_TIME = 0;
6663

6764
/**
6865
* Mapping from constant names to functions that handle the assertions.
@@ -518,7 +515,8 @@ public function testSetCookieSizeTooLarge()
518515

519516
$cookieValue = '';
520517

521-
for ($i = 0; $i < $this->cookieManager::MAX_COOKIE_SIZE + 1; $i++) {
518+
$cookieManager = $this->cookieManager;
519+
for ($i = 0; $i < $cookieManager::MAX_COOKIE_SIZE + 1; $i++) {
522520
$cookieValue = $cookieValue . 'a';
523521
}
524522

@@ -546,8 +544,9 @@ public function testSetTooManyCookies()
546544

547545
$userAgent = 'some_user_agent';
548546

549-
// Set self::MAX_NUM_COOKIES number of cookies in superglobal $_COOKIE.
550-
for ($i = count($_COOKIE); $i < self::MAX_NUM_COOKIES; $i++) {
547+
$cookieManager = $this->cookieManager;
548+
// Set $cookieManager::MAX_NUM_COOKIES number of cookies in superglobal $_COOKIE.
549+
for ($i = count($_COOKIE); $i < $cookieManager::MAX_NUM_COOKIES; $i++) {
551550
$_COOKIE['test_cookie_' . $i] = self::COOKIE_VALUE . '_' . $i;
552551
}
553552

@@ -616,7 +615,7 @@ private static function assertDeleteCookie(
616615
) {
617616
self::assertEquals(self::DELETE_COOKIE_NAME, $name);
618617
self::assertEquals('', $value);
619-
self::assertEquals($expiry, self::EXPIRE_NOW_TIME);
618+
self::assertEquals($expiry, PhpCookieManager::EXPIRE_NOW_TIME);
620619
self::assertFalse($secure);
621620
self::assertFalse($httpOnly);
622621
self::assertEquals('magento.url', $domain);
@@ -642,7 +641,7 @@ private static function assertDeleteCookieWithNoMetadata(
642641
) {
643642
self::assertEquals(self::DELETE_COOKIE_NAME_NO_METADATA, $name);
644643
self::assertEquals('', $value);
645-
self::assertEquals($expiry, self::EXPIRE_NOW_TIME);
644+
self::assertEquals($expiry, PhpCookieManager::EXPIRE_NOW_TIME);
646645
self::assertFalse($secure);
647646
self::assertFalse($httpOnly);
648647
self::assertEquals('', $domain);
@@ -668,7 +667,7 @@ private static function assertSensitiveCookieWithNoMetaDataHttps(
668667
) {
669668
self::assertEquals(self::SENSITIVE_COOKIE_NAME_NO_METADATA_HTTPS, $name);
670669
self::assertEquals(self::COOKIE_VALUE, $value);
671-
self::assertEquals(self::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
670+
self::assertEquals(PhpCookieManager::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
672671
self::assertTrue($secure);
673672
self::assertTrue($httpOnly);
674673
self::assertEquals('', $domain);
@@ -694,7 +693,7 @@ private static function assertSensitiveCookieWithNoMetaDataNotHttps(
694693
) {
695694
self::assertEquals(self::SENSITIVE_COOKIE_NAME_NO_METADATA_NOT_HTTPS, $name);
696695
self::assertEquals(self::COOKIE_VALUE, $value);
697-
self::assertEquals(self::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
696+
self::assertEquals(PhpCookieManager::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
698697
self::assertFalse($secure);
699698
self::assertTrue($httpOnly);
700699
self::assertEquals('', $domain);
@@ -720,7 +719,7 @@ private static function assertSensitiveCookieNoDomainNoPath(
720719
) {
721720
self::assertEquals(self::SENSITIVE_COOKIE_NAME_NO_DOMAIN_NO_PATH, $name);
722721
self::assertEquals(self::COOKIE_VALUE, $value);
723-
self::assertEquals(self::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
722+
self::assertEquals(PhpCookieManager::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
724723
self::assertTrue($secure);
725724
self::assertTrue($httpOnly);
726725
self::assertEquals('', $domain);
@@ -746,7 +745,7 @@ private static function assertSensitiveCookieWithDomainAndPath(
746745
) {
747746
self::assertEquals(self::SENSITIVE_COOKIE_NAME_WITH_DOMAIN_AND_PATH, $name);
748747
self::assertEquals(self::COOKIE_VALUE, $value);
749-
self::assertEquals(self::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
748+
self::assertEquals(PhpCookieManager::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
750749
self::assertFalse($secure);
751750
self::assertTrue($httpOnly);
752751
self::assertEquals('magento.url', $domain);
@@ -798,7 +797,7 @@ private static function assertPublicCookieWithNoDomainNoPath(
798797
) {
799798
self::assertEquals(self::PUBLIC_COOKIE_NAME_NO_METADATA, $name);
800799
self::assertEquals(self::COOKIE_VALUE, $value);
801-
self::assertEquals(self::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
800+
self::assertEquals(PhpCookieManager::EXPIRE_AT_END_OF_SESSION_TIME, $expiry);
802801
self::assertTrue($secure);
803802
self::assertTrue($httpOnly);
804803
self::assertEquals('magento.url', $domain);

0 commit comments

Comments
 (0)