![]() 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/AdvancedSearch/Block/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\AdvancedSearch\Block; use Magento\TestFramework\Helper\Bootstrap; use Magento\Search\Model\QueryResult; use Magento\AdvancedSearch\Model\SuggestedQueriesInterface; use Magento\Framework\View\LayoutInterface; /** * @magentoAppArea frontend */ class SuggestionsTest extends \PHPUnit\Framework\TestCase { /** @var \Magento\AdvancedSearch\Block\Suggestions */ protected $block; protected function setUp(): void { $suggestedQueries = $this->createMock(SuggestedQueriesInterface::CLASS); $suggestedQueries->expects($this->any())->method('getItems')->willReturn([ new QueryResult('test item', 1), new QueryResult("<script>alert('Test');</script>", 1) ]); $this->block = Bootstrap::getObjectManager()->create(\Magento\AdvancedSearch\Block\Suggestions::class, [ 'searchDataProvider' => $suggestedQueries, 'title' => 'title', ]); } public function testRenderEscaping() { $html = $this->block->toHtml(); $this->assertStringContainsString('test+item', $html); $this->assertStringContainsString('test item', $html); $this->assertStringNotContainsString('<script>', $html); $this->assertStringContainsString('%3Cscript%3Ealert%28%27Test%27%29%3B%3C%2Fscript%3E', $html); $this->assertStringContainsString("<script>alert('Test');</script>", $html); } }