/**
  * @param string $type
  * @return array
  */
 protected function getIconForType($type)
 {
     if (isset($this->iconsProvider->getIcons()[$type])) {
         return $this->iconsProvider->getIcons()[$type];
     }
     return ['url' => '', 'width' => 0, 'height' => 0];
 }
Пример #2
0
 /**
  * Create block for own configuration for each payment token
  *
  * @return void
  */
 protected function createVaultBlocks()
 {
     $icons = $this->cardConfigProvider->getIcons();
     $payments = $this->tokensProvider->getTokensComponents();
     foreach ($payments as $key => $payment) {
         $this->addChild($key, $payment->getName(), array_merge(['id' => $key, 'icons' => $icons], $payment->getConfig()));
     }
 }
 public function testGetConfig()
 {
     $imagesDirectoryPath = __DIR__ . '/../../../view/base/web/images/cc/';
     $expectedResult = ['payment' => ['ccform' => ['icons' => ['vi' => ['url' => 'http://cc.card/vi.png', 'width' => getimagesize($imagesDirectoryPath . 'vi.png')[0], 'height' => getimagesize($imagesDirectoryPath . 'vi.png')[1]], 'ae' => ['url' => 'http://cc.card/ae.png', 'width' => getimagesize($imagesDirectoryPath . 'ae.png')[0], 'height' => getimagesize($imagesDirectoryPath . 'ae.png')[1]]]]]];
     $ccAvailableTypesMock = ['vi' => ['fileId' => 'Magento_Payment::images/cc/vi.png', 'path' => $imagesDirectoryPath . 'vi.png', 'url' => 'http://cc.card/vi.png'], 'ae' => ['fileId' => 'Magento_Payment::images/cc/ae.png', 'path' => $imagesDirectoryPath . 'ae.png', 'url' => 'http://cc.card/ae.png']];
     $assetMock = $this->getMock('\\Magento\\Framework\\View\\Asset\\File', [], [], '', false);
     $this->ccConfigMock->expects($this->once())->method('getCcAvailableTypes')->willReturn($ccAvailableTypesMock);
     $this->ccConfigMock->expects($this->atLeastOnce())->method('createAsset')->withConsecutive([$ccAvailableTypesMock['vi']['fileId']], [$ccAvailableTypesMock['ae']['fileId']])->willReturn($assetMock);
     $this->assetSourceMock->expects($this->atLeastOnce())->method('findRelativeSourceFilePath')->with($assetMock)->willReturnOnConsecutiveCalls($ccAvailableTypesMock['vi']['path'], $ccAvailableTypesMock['ae']['path']);
     $assetMock->expects($this->atLeastOnce())->method('getSourceFile')->willReturnOnConsecutiveCalls($ccAvailableTypesMock['vi']['path'], $ccAvailableTypesMock['ae']['path']);
     $assetMock->expects($this->atLeastOnce())->method('getUrl')->willReturnOnConsecutiveCalls($ccAvailableTypesMock['vi']['url'], $ccAvailableTypesMock['ae']['url']);
     $this->assertEquals($expectedResult, $this->model->getConfig());
 }