83 lines
2.7 KiB
PHP
Executable File
83 lines
2.7 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* \Magento\Payment\Model\Config
|
|
*
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
namespace Magento\Payment\Model;
|
|
|
|
use Magento\Payment\Model\Config;
|
|
use Magento\TestFramework\Helper\Bootstrap;
|
|
|
|
/**
|
|
* Class ConfigTest
|
|
*/
|
|
class ConfigTest extends \PHPUnit\Framework\TestCase
|
|
{
|
|
/**
|
|
* @var Config
|
|
*/
|
|
private $model = null;
|
|
|
|
protected function setUp(): void
|
|
{
|
|
$objectManager = Bootstrap::getObjectManager();
|
|
/** @var $cache \Magento\Framework\App\Cache */
|
|
$cache = $objectManager->create(\Magento\Framework\App\Cache::class);
|
|
$cache->clean();
|
|
$fileResolverMock = $this->getMockBuilder(
|
|
\Magento\Framework\Config\FileResolverInterface::class
|
|
)->disableOriginalConstructor()->getMock();
|
|
$fileList = [
|
|
file_get_contents(__DIR__ . '/_files/payment.xml'),
|
|
file_get_contents(__DIR__ . '/_files/payment2.xml'),
|
|
];
|
|
$fileResolverMock->expects($this->any())->method('get')->willReturn($fileList);
|
|
$reader = $objectManager->create(
|
|
\Magento\Payment\Model\Config\Reader::class,
|
|
['fileResolver' => $fileResolverMock]
|
|
);
|
|
$data = $objectManager->create(\Magento\Payment\Model\Config\Data::class, ['reader' => $reader]);
|
|
$this->model = $objectManager->create(Config::class, ['dataStorage' => $data]);
|
|
}
|
|
|
|
/**
|
|
* @covers \Magento\Payment\Model\Config::getActiveMethods
|
|
*/
|
|
public function testGetActiveMethods()
|
|
{
|
|
$paymentMethods = $this->model->getActiveMethods();
|
|
static::assertNotEmpty($paymentMethods);
|
|
|
|
/** @var \Magento\Payment\Model\MethodInterface $method */
|
|
foreach ($paymentMethods as $method) {
|
|
static::assertNotEmpty($method->getCode());
|
|
static::assertTrue($method->isActive());
|
|
static::assertEquals(0, $method->getStore());
|
|
}
|
|
}
|
|
|
|
public function testGetCcTypes()
|
|
{
|
|
$expected = ['AE' => 'American Express', 'SM' => 'Switch/Maestro', 'SO' => 'Solo'];
|
|
$ccTypes = $this->model->getCcTypes();
|
|
$this->assertEquals($expected, $ccTypes);
|
|
}
|
|
|
|
public function testGetGroups()
|
|
{
|
|
$expected = ['any_payment' => 'Any Payment Methods', 'offline' => 'Offline Payment Methods'];
|
|
$groups = $this->model->getGroups();
|
|
$this->assertEquals($expected, $groups);
|
|
}
|
|
|
|
protected function tearDown(): void
|
|
{
|
|
$objectManager = Bootstrap::getObjectManager();
|
|
/** @var $cache \Magento\Framework\App\Cache */
|
|
$cache = $objectManager->create(\Magento\Framework\App\Cache::class);
|
|
$cache->clean();
|
|
}
|
|
}
|