151 lines
4.5 KiB
PHP
Executable File
151 lines
4.5 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
namespace Magento\Backend\Helper;
|
|
|
|
/**
|
|
* @magentoAppArea adminhtml
|
|
* @magentoAppIsolation enabled
|
|
* @magentoDbIsolation enabled
|
|
*/
|
|
class DataTest extends \PHPUnit\Framework\TestCase
|
|
{
|
|
/**
|
|
* @var \Magento\Backend\Helper\Data
|
|
*/
|
|
protected $_helper;
|
|
|
|
/**
|
|
* @var \Magento\Backend\Model\Auth
|
|
*/
|
|
protected $_auth;
|
|
|
|
protected function setUp(): void
|
|
{
|
|
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
|
|
\Magento\Framework\Config\ScopeInterface::class
|
|
)->setCurrentScope(
|
|
\Magento\Backend\App\Area\FrontNameResolver::AREA_CODE
|
|
);
|
|
$this->_helper = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
|
|
\Magento\Backend\Helper\Data::class
|
|
);
|
|
}
|
|
|
|
protected function tearDown(): void
|
|
{
|
|
$this->_helper = null;
|
|
$this->_auth = null;
|
|
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
|
|
\Magento\Framework\Config\ScopeInterface::class
|
|
)->setCurrentScope(
|
|
null
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Performs user login
|
|
*/
|
|
protected function _login()
|
|
{
|
|
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
|
|
\Magento\Backend\Model\UrlInterface::class
|
|
)->turnOffSecretKey();
|
|
$this->_auth = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
|
|
\Magento\Backend\Model\Auth::class
|
|
);
|
|
$this->_auth->login(
|
|
\Magento\TestFramework\Bootstrap::ADMIN_NAME,
|
|
\Magento\TestFramework\Bootstrap::ADMIN_PASSWORD
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Performs user logout
|
|
*/
|
|
protected function _logout()
|
|
{
|
|
$this->_auth->logout();
|
|
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
|
|
\Magento\Backend\Model\UrlInterface::class
|
|
)->turnOnSecretKey();
|
|
}
|
|
|
|
/**
|
|
* @covers \Magento\Backend\Helper\Data::getPageHelpUrl
|
|
* @covers \Magento\Backend\Helper\Data::setPageHelpUrl
|
|
* @covers \Magento\Backend\Helper\Data::addPageHelpUrl
|
|
*/
|
|
public function testPageHelpUrl()
|
|
{
|
|
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
|
|
\Magento\Framework\App\RequestInterface::class
|
|
)->setControllerModule(
|
|
'dummy'
|
|
)->setControllerName(
|
|
'index'
|
|
)->setActionName(
|
|
'test'
|
|
);
|
|
|
|
$expected = 'http://www.magentocommerce.com/gethelp/en_US/dummy/index/test/';
|
|
$this->assertEquals($expected, $this->_helper->getPageHelpUrl(), 'Incorrect help Url');
|
|
|
|
$this->_helper->addPageHelpUrl('dummy');
|
|
$expected .= 'dummy';
|
|
$this->assertEquals($expected, $this->_helper->getPageHelpUrl(), 'Incorrect help Url suffix');
|
|
}
|
|
|
|
/**
|
|
* @covers \Magento\Backend\Helper\Data::getCurrentUserId
|
|
*/
|
|
public function testGetCurrentUserId()
|
|
{
|
|
$this->assertFalse($this->_helper->getCurrentUserId());
|
|
|
|
/**
|
|
* perform login
|
|
*/
|
|
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
|
|
\Magento\Backend\Model\UrlInterface::class
|
|
)->turnOffSecretKey();
|
|
|
|
$auth = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(\Magento\Backend\Model\Auth::class);
|
|
$auth->login(\Magento\TestFramework\Bootstrap::ADMIN_NAME, \Magento\TestFramework\Bootstrap::ADMIN_PASSWORD);
|
|
$this->assertEquals(1, $this->_helper->getCurrentUserId());
|
|
|
|
/**
|
|
* perform logout
|
|
*/
|
|
$auth->logout();
|
|
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
|
|
\Magento\Backend\Model\UrlInterface::class
|
|
)->turnOnSecretKey();
|
|
|
|
$this->assertFalse($this->_helper->getCurrentUserId());
|
|
}
|
|
|
|
/**
|
|
* @covers \Magento\Backend\Helper\Data::prepareFilterString
|
|
*/
|
|
public function testPrepareFilterString()
|
|
{
|
|
$expected = ['key1' => 'val1', 'key2' => 'val2', 'key3' => 'val3'];
|
|
|
|
$filterString = base64_encode('key1=' . rawurlencode('val1') . '&key2=' . rawurlencode('val2') . '&key3=val3');
|
|
$actual = $this->_helper->prepareFilterString($filterString);
|
|
$this->assertEquals($expected, $actual);
|
|
}
|
|
|
|
public function testGetHomePageUrl()
|
|
{
|
|
$this->assertStringEndsWith(
|
|
'index.php/backend/admin/',
|
|
$this->_helper->getHomePageUrl(),
|
|
'Incorrect home page URL'
|
|
);
|
|
}
|
|
}
|