46 lines
1.6 KiB
PHP
46 lines
1.6 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Esun\MultiLocaleTranslation\Test\Unit\Model\Queue;
|
|
|
|
use Esun\MultiLocaleTranslation\Model\EntityPool;
|
|
use Esun\MultiLocaleTranslation\Model\ProviderConfig;
|
|
use Esun\MultiLocaleTranslation\Model\Queue\QueueManager;
|
|
use Esun\MultiLocaleTranslation\Model\StoreViewProvider;
|
|
use Magento\Framework\App\ResourceConnection;
|
|
use Magento\Framework\DB\Adapter\AdapterInterface;
|
|
use Magento\Framework\DB\Select;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
class QueueManagerTest extends TestCase
|
|
{
|
|
public function testClearsEveryQueueRecord(): void
|
|
{
|
|
$select = $this->createMock(Select::class);
|
|
$select->method('from')->willReturnSelf();
|
|
$select->method('where')->willReturnSelf();
|
|
|
|
$connection = $this->createMock(AdapterInterface::class);
|
|
$connection->method('select')->willReturn($select);
|
|
$connection->method('fetchOne')->willReturn('2');
|
|
$connection->expects(self::once())
|
|
->method('delete')
|
|
->with('esun_localetranslation_queue')
|
|
->willReturn(18);
|
|
|
|
$resourceConnection = $this->createMock(ResourceConnection::class);
|
|
$resourceConnection->method('getConnection')->willReturn($connection);
|
|
$resourceConnection->method('getTableName')->willReturn('esun_localetranslation_queue');
|
|
|
|
$manager = new QueueManager(
|
|
$resourceConnection,
|
|
$this->createMock(EntityPool::class),
|
|
$this->createMock(ProviderConfig::class),
|
|
$this->createMock(StoreViewProvider::class)
|
|
);
|
|
|
|
self::assertSame(['deleted' => 18, 'processing' => 2], $manager->clearAll());
|
|
}
|
|
}
|