20 class ProTest extends \PHPUnit\Framework\TestCase
30 protected function setUp()
38 $args = $objectHelper->getConstructArguments(
39 \
Magento\Paypal\Model\Pro::class,
42 'infoFactory' => $infoFactory,
43 'apiFactory' => $apiFactory
47 $this->pro = $this->getMockBuilder(\
Magento\Paypal\Model\Pro::class)
48 ->setMethods([
'_isPaymentReviewRequired'])
49 ->setConstructorArgs($args)
51 $this->pro->setMethod(PaypalConfig::METHOD_PAYMENT_PRO,
$storeId);
65 '_isPaymentReviewRequired' 67 $this->returnValue($isReviewRequired)
71 )->disableOriginalConstructor()->setMethods(
72 [
'getAdditionalInformation',
'__wakeup']
77 'getAdditionalInformation' 79 $this->equalTo(\
Magento\Paypal\Model\Info::PENDING_REASON_GLOBAL)
81 $this->returnValue($pendingReason)
84 $this->assertEquals($expected, $this->pro->canReviewPayment(
$payment));
95 [
'another_pending_reason',
false,
false],
96 [
'another_pending_reason',
true,
true]
108 $this->apiMock->expects(static::any())
109 ->method(
'setAuthorizationId')
111 $this->apiMock->expects(static::any())
112 ->method(
'setIsCaptureComplete')
114 $this->apiMock->expects(static::any())
115 ->method(
'setAmount')
118 $paymentMock->expects(static::once())
120 ->willReturn($orderMock);
122 $paymentMock->method(
'isCaptureFinal')
125 $this->apiMock->expects(static::once())
126 ->method(
'getTransactionId')
128 $this->apiMock->expects(static::any())
129 ->method(
'getDataUsingMethod')
133 $this->pro->capture($paymentMock,
$amount);
142 $infoFactory = $this->getMockBuilder(\
Magento\Paypal\Model\InfoFactory::class)
143 ->disableOriginalConstructor()
144 ->setMethods([
'create'])
146 $infoMock = $this->getMockBuilder(\
Magento\Paypal\Model\Info::class)
147 ->disableOriginalConstructor()
148 ->setMethods([
'isPaymentReviewRequired'])
150 $infoFactory->expects(static::any())->method(
'create')->willReturn($infoMock);
161 $configType = \Magento\Paypal\Model\Config::class;
162 $configMock = $this->getMockBuilder($configType)
163 ->disableOriginalConstructor()
166 ->disableOriginalConstructor()
167 ->setMethods([
'create'])
172 ->with($configType, [
'params' => [
173 PaypalConfig::METHOD_PAYMENT_PRO,
176 ->willReturn($configMock);
187 $apiFactory = $this->getMockBuilder(\
Magento\Paypal\Model\Api\
Type\Factory::class)
188 ->disableOriginalConstructor()
189 ->setMethods([
'create'])
192 $httpClient = $this->getMockBuilder(\
Magento\Framework\HTTP\Adapter\Curl::class)
193 ->disableOriginalConstructor()
196 $httpClient->expects(static::any())
198 ->will(static::returnValue(
199 "\r\n" .
'ACK=Success&CORRELATIONID=32342431' 202 $curlFactory = $this->getMockBuilder(\
Magento\Framework\HTTP\Adapter\CurlFactory::class)
203 ->disableOriginalConstructor()
204 ->setMethods([
'create'])
206 $curlFactory->expects(static::any())->method(
'create')->willReturn($httpClient);
208 $apiType = \Magento\Paypal\Model\Api\Nvp::class;
209 $args = $objectHelper->getConstructArguments(
212 'curlFactory' => $curlFactory
215 $this->apiMock = $this->getMockBuilder($apiType)
216 ->setConstructorArgs($args)
221 'getDataUsingMethod',
222 'setAuthorizationId',
223 'setIsCaptureComplete',
229 $apiFactory->expects(static::any())->method(
'create')->with($apiType)->willReturn($this->apiMock);
239 $paymentMock = $this->getMockBuilder(\
Magento\
Payment\Model\Info::class)
240 ->disableOriginalConstructor()
242 'getParentTransactionId',
'getOrder',
'getShouldCloseParentTransaction',
'isCaptureFinal',
245 $parentTransactionId = 43;
246 $paymentMock->expects(static::once())
247 ->method(
'getParentTransactionId')
248 ->willReturn($parentTransactionId);
262 'increment_id' =>
'0000004' 264 $orderMock = $this->getMockBuilder(\
Magento\Sales\Model\Order::class)
265 ->disableOriginalConstructor()
266 ->setMethods([
'getBaseCurrencyCode',
'getIncrementId',
'getId',
'getBillingAddress',
'getShippingAddress'])
269 $orderMock->expects(static::once())
271 ->willReturn($orderData[
'id']);
272 $orderMock->expects(static::once())
273 ->method(
'getBaseCurrencyCode')
274 ->willReturn($orderData[
'currency']);
275 $orderMock->expects(static::atLeastOnce())
276 ->method(
'getIncrementId')
277 ->willReturn($orderData[
'increment_id']);
const PAYMENTSTATUS_REVIEW
canReviewPaymentDataProvider()
testCanReviewPayment($pendingReason, $isReviewRequired, $expected)
getConfigFactory($storeId)
getApiFactory(ObjectManager $objectHelper)