ConfigTest.php 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?php
  2. /**
  3. * \Magento\Payment\Model\Config
  4. *
  5. * Copyright © Magento, Inc. All rights reserved.
  6. * See COPYING.txt for license details.
  7. */
  8. namespace Magento\Payment\Model;
  9. use Magento\Payment\Model\Config;
  10. use Magento\TestFramework\Helper\Bootstrap;
  11. /**
  12. * Class ConfigTest
  13. */
  14. class ConfigTest extends \PHPUnit\Framework\TestCase
  15. {
  16. /**
  17. * @var Config
  18. */
  19. private $model = null;
  20. protected function setUp()
  21. {
  22. $objectManager = Bootstrap::getObjectManager();
  23. /** @var $cache \Magento\Framework\App\Cache */
  24. $cache = $objectManager->create(\Magento\Framework\App\Cache::class);
  25. $cache->clean();
  26. $fileResolverMock = $this->getMockBuilder(
  27. \Magento\Framework\Config\FileResolverInterface::class
  28. )->disableOriginalConstructor()->getMock();
  29. $fileList = [
  30. file_get_contents(__DIR__ . '/_files/payment.xml'),
  31. file_get_contents(__DIR__ . '/_files/payment2.xml'),
  32. ];
  33. $fileResolverMock->expects($this->any())->method('get')->will($this->returnValue($fileList));
  34. $reader = $objectManager->create(
  35. \Magento\Payment\Model\Config\Reader::class,
  36. ['fileResolver' => $fileResolverMock]
  37. );
  38. $data = $objectManager->create(\Magento\Payment\Model\Config\Data::class, ['reader' => $reader]);
  39. $this->model = $objectManager->create(Config::class, ['dataStorage' => $data]);
  40. }
  41. /**
  42. * @covers \Magento\Payment\Model\Config::getActiveMethods
  43. */
  44. public function testGetActiveMethods()
  45. {
  46. $paymentMethods = $this->model->getActiveMethods();
  47. static::assertNotEmpty($paymentMethods);
  48. /** @var \Magento\Payment\Model\MethodInterface $method */
  49. foreach ($paymentMethods as $method) {
  50. static::assertNotEmpty($method->getCode());
  51. static::assertTrue($method->isActive());
  52. static::assertEquals(0, $method->getStore());
  53. }
  54. }
  55. public function testGetCcTypes()
  56. {
  57. $expected = ['AE' => 'American Express', 'SM' => 'Switch/Maestro', 'SO' => 'Solo'];
  58. $ccTypes = $this->model->getCcTypes();
  59. $this->assertEquals($expected, $ccTypes);
  60. }
  61. public function testGetGroups()
  62. {
  63. $expected = ['any_payment' => 'Any Payment Methods', 'offline' => 'Offline Payment Methods'];
  64. $groups = $this->model->getGroups();
  65. $this->assertEquals($expected, $groups);
  66. }
  67. protected function tearDown()
  68. {
  69. $objectManager = Bootstrap::getObjectManager();
  70. /** @var $cache \Magento\Framework\App\Cache */
  71. $cache = $objectManager->create(\Magento\Framework\App\Cache::class);
  72. $cache->clean();
  73. }
  74. }