b374k
m1n1 1.01
Apache/2.4.41 (Ubuntu)
Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64
uid=33(www-data) gid=33(www-data) groups=33(www-data)
server ip : 62.171.164.128 | your ip : 127.0.0.1
safemode OFF
 >  / home / dev2.destoffenstraat.com / dev / tests / integration / testsuite / Magento / Store / Block /
Filename/home/dev2.destoffenstraat.com/dev/tests/integration/testsuite/Magento/Store/Block/SwitcherTest.php
Size2.01 kb
Permissionrw-r--r--
Ownerroot : root
Create time17-Aug-2025 10:26
Last modified28-Jan-2025 06:45
Last accessed23-Aug-2025 02:07
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Store\Block;

use Magento\Framework\App\ActionInterface;
use Magento\TestFramework\Helper\Bootstrap;
use Magento\Framework\Url\DecoderInterface;
use Magento\Framework\App\ScopeInterface;

/**
* Integration tests for \Magento\Store\Block\Switcher block.
*/
class SwitcherTest extends \PHPUnit\Framework\TestCase
{
/**
* @var \Magento\TestFramework\ObjectManager
*/
private $_objectManager;

/**
* @var DecoderInterface
*/
private $decoder;

/**
* Set up.
*
* @return void
*/
protected function setUp(): void
{
$this->_objectManager = Bootstrap::getObjectManager();
$this->decoder = Bootstrap::getObjectManager()->create(DecoderInterface::class);
}

/**
* Test that GetTargetStorePostData() method returns correct data.
*
* @magentoDataFixture Magento/Store/_files/store.php
* @return void
*/
public function testGetTargetStorePostData()
{
$storeCode = 'test';
/** @var \Magento\Store\Block\Switcher $block */
$block = $this->_objectManager->create(\Magento\Store\Block\Switcher::class);
/** @var \Magento\Store\Api\StoreRepositoryInterface $storeRepository */
$storeRepository = $this->_objectManager->create(\Magento\Store\Api\StoreRepositoryInterface::class);
$store = $storeRepository->get($storeCode);

$result = json_decode($block->getTargetStorePostData($store), true);
$url = parse_url($this->decoder->decode($result['data'][ActionInterface::PARAM_NAME_URL_ENCODED]));
$storeParsedQuery = [];
if (isset($url['query'])) {
parse_str($url['query'], $storeParsedQuery);
}

$this->assertSame($storeCode, $result['data']['___store']);
$this->assertSame($storeCode, $storeParsedQuery['___store']);
$this->assertSame(ScopeInterface::SCOPE_DEFAULT, $result['data']['___from_store']);
}
}