93 lines
3.3 KiB
PHP
Executable File
93 lines
3.3 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
|
|
namespace Magento\Backend\Controller\Adminhtml;
|
|
|
|
/**
|
|
* @magentoAppArea adminhtml
|
|
*/
|
|
class CacheTest extends \Magento\TestFramework\TestCase\AbstractBackendController
|
|
{
|
|
/**
|
|
* @magentoDataFixture Magento/Backend/controllers/_files/cache/application_cache.php
|
|
* @magentoDataFixture Magento/Backend/controllers/_files/cache/non_application_cache.php
|
|
*/
|
|
public function testFlushAllAction()
|
|
{
|
|
/** @var $cache \Magento\Framework\App\Cache */
|
|
$cache = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
|
|
\Magento\Framework\App\Cache::class
|
|
);
|
|
$this->assertNotEmpty($cache->load('APPLICATION_FIXTURE'));
|
|
|
|
$this->dispatch('backend/admin/cache/flushAll');
|
|
|
|
/** @var $cachePool \Magento\Framework\App\Cache\Frontend\Pool */
|
|
$this->assertFalse($cache->load('APPLICATION_FIXTURE'));
|
|
|
|
$cachePool = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
|
|
\Magento\Framework\App\Cache\Frontend\Pool::class
|
|
);
|
|
/** @var $cacheFrontend \Magento\Framework\Cache\FrontendInterface */
|
|
foreach ($cachePool as $cacheFrontend) {
|
|
$this->assertFalse($cacheFrontend->getBackend()->load('NON_APPLICATION_FIXTURE'));
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @magentoDataFixture Magento/Backend/controllers/_files/cache/application_cache.php
|
|
* @magentoDataFixture Magento/Backend/controllers/_files/cache/non_application_cache.php
|
|
*/
|
|
public function testFlushSystemAction()
|
|
{
|
|
$this->dispatch('backend/admin/cache/flushSystem');
|
|
|
|
/** @var $cache \Magento\Framework\App\Cache */
|
|
$cache = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
|
|
\Magento\Framework\App\Cache::class
|
|
);
|
|
/** @var $cachePool \Magento\Framework\App\Cache\Frontend\Pool */
|
|
$this->assertFalse($cache->load('APPLICATION_FIXTURE'));
|
|
|
|
$cachePool = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create(
|
|
\Magento\Framework\App\Cache\Frontend\Pool::class
|
|
);
|
|
/** @var $cacheFrontend \Magento\Framework\Cache\FrontendInterface */
|
|
foreach ($cachePool as $cacheFrontend) {
|
|
$this->assertSame(
|
|
'non-application cache data',
|
|
$cacheFrontend->getBackend()->load('NON_APPLICATION_FIXTURE')
|
|
);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @dataProvider massActionsInvalidTypesDataProvider
|
|
* @param $action
|
|
*/
|
|
public function testMassActionsInvalidTypes($action)
|
|
{
|
|
$this->getRequest()->setParams(['types' => ['invalid_type_1', 'invalid_type_2', 'config']]);
|
|
$this->dispatch('backend/admin/cache/' . $action);
|
|
$this->assertSessionMessages(
|
|
$this->containsEqual("These cache type(s) don't exist: invalid_type_1, invalid_type_2"),
|
|
\Magento\Framework\Message\MessageInterface::TYPE_ERROR
|
|
);
|
|
}
|
|
|
|
/**
|
|
* @return array
|
|
*/
|
|
public function massActionsInvalidTypesDataProvider()
|
|
{
|
|
return [
|
|
'enable' => ['massEnable'],
|
|
'disable' => ['massDisable'],
|
|
'refresh' => ['massRefresh']
|
|
];
|
|
}
|
|
}
|