/
githubmirror
/
magento2
Обзор
Документация
Войти
/
githubmirror
/
magento2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.4-develop
dev/tests/integration/testsuite/Magento/Persistent/Model/SessionTest.php
104 строки
3 KB
Raj Mohan R
AC-16236::Upgrade Core Test Framework to PHPUnit 12 and Migrate from PHPUnit 10
11 фев 2026, 13:51
11 фев 2026, 13:51
152ed41
Код
Авторство
О чём код?
<?php /** * Copyright 2014 Adobe * All Rights Reserved. */ namespace Magento\Persistent\Model; use PHPUnit\Framework\Attributes\DataProvider; class SessionTest extends \PHPUnit\Framework\TestCase { /** * Session model * * @var \Magento\Persistent\Model\Session */ protected $session; /** * Object manager * * @var \Magento\Framework\ObjectManagerInterface */ protected $objectManager; /** * The existing cookies * * @var array */ protected $existingCookies; protected function setUp(): void { $this->objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); $this->session = $this->objectManager->create( \Magento\Persistent\Model\Session::class ); $this->existingCookies = $_COOKIE; } protected function tearDown(): void { $_COOKIE = $this->existingCookies; } public function testSetPersistentCookie() { $this->assertArrayNotHasKey(Session::COOKIE_NAME, $_COOKIE); $key = 'sessionKey'; $this->session->setKey($key); $this->session->setPersistentCookie(1000, '/'); $this->assertEquals($key, $_COOKIE[Session::COOKIE_NAME]); } public function testRemovePersistendCookie() { $_COOKIE[Session::COOKIE_NAME] = 'cookieValue'; $this->session->removePersistentCookie(); $this->assertArrayNotHasKey(Session::COOKIE_NAME, $_COOKIE); } /** * @param int $duration * @param string $cookieValue */ #[DataProvider('renewPersistentCookieDataProvider')] public function testRenewPersistentCookie($duration, $cookieValue = 'cookieValue') { $_COOKIE[Session::COOKIE_NAME] = $cookieValue; $this->session->renewPersistentCookie($duration, '/'); $this->assertEquals($cookieValue, $_COOKIE[Session::COOKIE_NAME]); } public static function renewPersistentCookieDataProvider() { return [ 'no duration' => [null], 'no cookie' => [1000, null], 'all' => [1000], ]; } /** * @magentoDataFixture Magento/Customer/_files/customer.php */ public function testLoadByCookieKey() { /** @var \Magento\Persistent\Model\Session $preSession */ $preSession = $this->objectManager->get(\Magento\Persistent\Model\SessionFactory::class) ->create() ->loadByCookieKey(); $this->assertNull($preSession->getCustomerId()); $this->session->setCustomerId(1)->save(); $this->session->setPersistentCookie(1000, '/'); /** @var \Magento\Persistent\Model\Session $postSession */ $postSession = $this->objectManager->get(\Magento\Persistent\Model\SessionFactory::class) ->create() ->loadByCookieKey(); $this->assertEquals(1, $postSession->getCustomerId()); } }