Skip to content

Commit 0ee8920

Browse files
author
Gurzhyi, Andrii
committed
MAGETWO-46207: Integration Vault of payment solution
- Fixed tests
1 parent 862bb3f commit 0ee8920

File tree

5 files changed

+484
-10
lines changed

5 files changed

+484
-10
lines changed

app/code/Magento/Vault/Api/PaymentTokenManagementInterface.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ interface PaymentTokenManagementInterface
1919
* Lists payment tokens that match specified search criteria.
2020
*
2121
* @param int $customerId Customer ID.
22-
* @return \Magento\Vault\Api\Data\PaymentTokenSearchResultInterface Payment token search result interface.
22+
* @return \Magento\Vault\Api\Data\PaymentTokenSearchResultsInterface Payment token search result interface.
2323
*/
2424
public function getListByCustomerId($customerId);
2525

dev/tests/integration/testsuite/Magento/Test/Integrity/Magento/Payment/MethodsTest.php

Lines changed: 47 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
namespace Magento\Test\Integrity\Magento\Payment;
1111

1212
use Magento\Framework\App\State;
13+
use Magento\TestFramework\Helper\Bootstrap;
1314

1415
class MethodsTest extends \PHPUnit_Framework_TestCase
1516
{
@@ -22,11 +23,12 @@ class MethodsTest extends \PHPUnit_Framework_TestCase
2223
*/
2324
public function testPaymentMethod($code, $methodClass)
2425
{
26+
Bootstrap::getObjectManager()->configure($this->getTestConfiguration());
2527
/** @var $blockFactory \Magento\Framework\View\Element\BlockFactory */
26-
$blockFactory = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
28+
$blockFactory = Bootstrap::getObjectManager()->get(
2729
'Magento\Framework\View\Element\BlockFactory'
2830
);
29-
$storeId = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
31+
$storeId = Bootstrap::getObjectManager()->get(
3032
'Magento\Store\Model\StoreManagerInterface'
3133
)->getStore()->getId();
3234
/** @var $model \Magento\Payment\Model\MethodInterface */
@@ -36,7 +38,7 @@ public function testPaymentMethod($code, $methodClass)
3638
*/
3739
$this->fail("Model of '{$code}' payment method is not found.");
3840
}
39-
$model = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create($methodClass);
41+
$model = Bootstrap::getObjectManager()->create($methodClass);
4042
if ($code == \Magento\Payment\Model\Method\Substitution::CODE) {
4143
$paymentInfo = $this->getMockBuilder(
4244
'Magento\Payment\Model\Info'
@@ -52,7 +54,7 @@ public function testPaymentMethod($code, $methodClass)
5254
);
5355
$model->setInfoInstance($paymentInfo);
5456
}
55-
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Framework\App\State')
57+
Bootstrap::getObjectManager()->get('Magento\Framework\App\State')
5658
->setMode(State::MODE_DEVELOPER);
5759
$this->assertNotEmpty($model->getTitle());
5860
foreach ([$model->getFormBlockType(), $model->getInfoBlockType()] as $blockClass) {
@@ -63,20 +65,20 @@ public function testPaymentMethod($code, $methodClass)
6365
$this->assertFileExists((string)$block->getTemplateFile(), $message);
6466
if ($model->canUseInternal()) {
6567
try {
66-
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
68+
Bootstrap::getObjectManager()->get(
6769
'Magento\Store\Model\StoreManagerInterface'
6870
)->getStore()->setId(
6971
\Magento\Store\Model\Store::DEFAULT_STORE_ID
7072
);
7173
$block->setArea('adminhtml');
7274
$this->assertFileExists((string)$block->getTemplateFile(), $message);
73-
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
75+
Bootstrap::getObjectManager()->get(
7476
'Magento\Store\Model\StoreManagerInterface'
7577
)->getStore()->setId(
7678
$storeId
7779
);
7880
} catch (\Exception $e) {
79-
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get(
81+
Bootstrap::getObjectManager()->get(
8082
'Magento\Store\Model\StoreManagerInterface'
8183
)->getStore()->setId(
8284
$storeId
@@ -85,7 +87,7 @@ public function testPaymentMethod($code, $methodClass)
8587
}
8688
}
8789
}
88-
\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Framework\App\State')
90+
Bootstrap::getObjectManager()->get('Magento\Framework\App\State')
8991
->setMode(State::MODE_DEFAULT);
9092
}
9193

@@ -95,11 +97,47 @@ public function testPaymentMethod($code, $methodClass)
9597
public function paymentMethodDataProvider()
9698
{
9799
/** @var $helper \Magento\Payment\Helper\Data */
98-
$helper = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()->get('Magento\Payment\Helper\Data');
100+
$helper = Bootstrap::getObjectManager()->get('Magento\Payment\Helper\Data');
99101
$result = [];
100102
foreach ($helper->getPaymentMethods() as $code => $method) {
101103
$result[] = [$code, $method['model']];
102104
}
103105
return $result;
104106
}
107+
108+
/**
109+
* @param string $path
110+
* @return \RegexIterator
111+
*/
112+
private function collectFiles($path)
113+
{
114+
$ds = preg_quote(DIRECTORY_SEPARATOR);
115+
$flags = \FilesystemIterator::CURRENT_AS_FILEINFO
116+
| \FilesystemIterator::SKIP_DOTS;
117+
$iterator = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator($path, $flags));
118+
119+
return new \RegexIterator(
120+
$iterator,
121+
'#' . $ds . 'etc' . $ds . 'di\.php$#',
122+
\RegexIterator::MATCH,
123+
\RegexIterator::USE_KEY
124+
);
125+
}
126+
127+
/**
128+
* @return array
129+
*/
130+
private function getTestConfiguration()
131+
{
132+
$result = [];
133+
$ds = DIRECTORY_SEPARATOR;
134+
$path = __DIR__ . $ds . str_repeat('..' . $ds, 5) . 'Magento';
135+
136+
foreach ($this->collectFiles($path) as $file) {
137+
$config = include $file->getPathname();
138+
$result = array_replace_recursive($result, $config);
139+
}
140+
141+
return $result;
142+
}
105143
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
<?php
2+
/**
3+
* Copyright © 2015 Magento. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\Vault\Model;
7+
8+
use Magento\Payment\Gateway\ConfigInterface;
9+
10+
/**
11+
* Class VaultConfigMock
12+
*/
13+
class VaultConfigMock implements ConfigInterface
14+
{
15+
/**
16+
* @inheritdoc
17+
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
18+
*/
19+
public function getValue($field, $storeId = null)
20+
{
21+
switch ($field) {
22+
case 'model':
23+
return VaultPaymentMock::class;
24+
}
25+
26+
return null;
27+
}
28+
29+
/**
30+
* @inheritdoc
31+
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
32+
*/
33+
public function setMethodCode($methodCode)
34+
{
35+
//
36+
}
37+
38+
/**
39+
* @inheritdoc
40+
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
41+
*/
42+
public function setPathPattern($pathPattern)
43+
{
44+
//
45+
}
46+
}

0 commit comments

Comments
 (0)