![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/dev/tests/integration/testsuite/Magento/Theme/Block/Html/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Theme\Block\Html; use Magento\Framework\Serialize\SerializerInterface; use Magento\TestFramework\Helper\Bootstrap; /** * @magentoAppArea frontend */ class BreadcrumbsTest extends \PHPUnit\Framework\TestCase { /** * @var \Magento\Theme\Block\Html\Breadcrumbs */ private $block; /** * @var SerializerInterface */ private $serializer; protected function setUp(): void { Bootstrap::getObjectManager()->get(\Magento\Framework\App\State::class)->setAreaCode('frontend'); $this->block = Bootstrap::getObjectManager() ->get(\Magento\Framework\View\LayoutInterface::class) ->createBlock(\Magento\Theme\Block\Html\Breadcrumbs::class); $this->serializer = Bootstrap::getObjectManager()->get(SerializerInterface::class); } public function testAddCrumb() { $this->assertEmpty($this->block->toHtml()); $info = ['label' => 'test label', 'title' => 'test title', 'link' => 'test link']; $this->block->addCrumb('test', $info); $html = $this->block->toHtml(); $this->assertStringContainsString('test label', $html); $this->assertStringContainsString('test title', $html); $this->assertStringContainsString('test link', $html); } public function testGetCacheKeyInfo() { $crumbs = ['test' => ['label' => 'test label', 'title' => 'test title', 'link' => 'test link']]; foreach ($crumbs as $crumbName => &$crumb) { $this->block->addCrumb($crumbName, $crumb); $crumb += ['first' => null, 'last' => null, 'readonly' => null]; } $cacheKeyInfo = $this->block->getCacheKeyInfo(); $crumbsFromCacheKey = $this->serializer->unserialize(base64_decode($cacheKeyInfo['crumbs'])); $this->assertEquals($crumbs, $crumbsFromCacheKey); } }