/** * @dataProvider canVoidDataProvider * @param bool $canVoid */ public function testCanVoid($canVoid) { $this->_orderMock->expects($this->once())->method('getPayment')->will($this->returnValue($this->_paymentMock)); $this->_paymentMock->expects($this->once())->method('canVoid', '__wakeup')->with($this->equalTo($this->_model))->will($this->returnValue($canVoid)); $this->_model->setState(\Magento\Sales\Model\Order\Invoice::STATE_PAID); $this->assertEquals($canVoid, $this->_model->canVoid()); }
/** * @expectedException \Magento\Framework\Model\Exception */ public function testInitialize() { $order = $this->getMock('Magento\\Sales\\Model\\Order', [], [], '', false); $this->infoInstance->expects($this->any())->method('getOrder')->will($this->returnValue($order)); $this->paypalConfig->expects($this->once())->method('getBuildNotationCode')->will($this->returnValue('build notation code')); $this->payflowRequest->expects($this->once())->method('setData')->with('BNCODE', 'build notation code')->will($this->returnSelf()); $this->model->initialize(\Magento\Paypal\Model\Config::PAYMENT_ACTION_AUTH, new \Magento\Framework\Object()); }
protected function setUp() { $this->payment = $this->getMockBuilder(Payment::class)->disableOriginalConstructor()->setMethods(['setCcTransId', 'setLastTransId', 'setAdditionalInformation'])->getMock(); $this->subjectReader = $this->getMockBuilder(SubjectReader::class)->disableOriginalConstructor()->getMock(); $this->payment->expects(static::once())->method('setCcTransId'); $this->payment->expects(static::once())->method('setLastTransId'); $this->payment->expects(static::any())->method('setAdditionalInformation'); $this->paymentHandler = new PaymentDetailsHandler($this->subjectReader); }
/** * @dataProvider canVoidDataProvider * @param bool $canVoid */ public function testCanVoid($canVoid) { $entityName = 'invoice'; $this->orderMock->expects($this->once())->method('getPayment')->will($this->returnValue($this->_paymentMock)); $this->orderMock->expects($this->once())->method('setHistoryEntityName')->with($entityName)->will($this->returnSelf()); $this->_paymentMock->expects($this->once())->method('canVoid', '__wakeup')->will($this->returnValue($canVoid)); $this->model->setState(\Magento\Sales\Model\Order\Invoice::STATE_PAID); $this->assertEquals($canVoid, $this->model->canVoid()); }
/** * @covers \Magento\BraintreeTwo\Gateway\Response\CaptureDetailsHandler::handle */ public function testHandle() { $paymentData = $this->getPaymentDataObjectMock(); $subject['payment'] = $paymentData; $this->payment->expects(static::once())->method('setIsTransactionClosed')->with(false); $response = ['object' => ['success' => true]]; $this->subjectReader->expects(self::once())->method('readPayment')->with($subject)->willReturn($paymentData); $this->captureHandler->handle($subject, $response); }
/** * @covers \Magento\BraintreeTwo\Gateway\Response\CloneDetailsHandler::handle */ public function testHandle() { $paymentData = $this->getPaymentDataObjectMock(); $transaction = $this->getBraintreeTransaction(); $subject['payment'] = $paymentData; $this->payment->expects(static::once())->method('setTransactionId')->with(self::TRANSACTION_ID); $response = ['object' => $transaction]; $this->subjectReader->expects(self::once())->method('readPayment')->with($subject)->willReturn($paymentData); $this->subjectReader->expects(self::once())->method('readTransaction')->with($response)->willReturn($transaction); $this->cloneHandler->handle($subject, $response); }
public function testBuild() { $additionalData = [DataAssignObserver::DEVICE_DATA => self::DEVICE_DATA]; $expectedResult = [KountPaymentDataBuilder::DEVICE_DATA => self::DEVICE_DATA]; $buildSubject = ['payment' => $this->paymentDO]; $this->paymentMock->expects(static::exactly(count($additionalData)))->method('getAdditionalInformation')->willReturn($additionalData); $this->configMock->expects(static::once())->method('hasFraudProtection')->willReturn(true); $this->paymentDO->expects(static::once())->method('getPayment')->willReturn($this->paymentMock); $this->subjectReaderMock->expects(self::once())->method('readPayment')->with($buildSubject)->willReturn($this->paymentDO); static::assertEquals($expectedResult, $this->builder->build($buildSubject)); }
public function testBuild() { $additionalData = [[DataAssignObserver::PAYMENT_METHOD_NONCE, self::PAYMENT_METHOD_NONCE]]; $expectedResult = [PaymentDataBuilder::AMOUNT => 10.0, PaymentDataBuilder::PAYMENT_METHOD_NONCE => self::PAYMENT_METHOD_NONCE, PaymentDataBuilder::MERCHANT_ACCOUNT_ID => self::MERCHANT_ACCOUNT_ID]; $buildSubject = ['payment' => $this->paymentDO, 'amount' => 10.0]; $this->paymentMock->expects(static::exactly(count($additionalData)))->method('getAdditionalInformation')->willReturnMap($additionalData); $this->configMock->expects(static::once())->method('getValue')->with(Config::KEY_MERCHANT_ACCOUNT_ID)->willReturn(self::MERCHANT_ACCOUNT_ID); $this->paymentDO->expects(static::once())->method('getPayment')->willReturn($this->paymentMock); $this->subjectReaderMock->expects(self::once())->method('readPayment')->with($buildSubject)->willReturn($this->paymentDO); $this->subjectReaderMock->expects(self::once())->method('readAmount')->with($buildSubject)->willReturn(10.0); static::assertEquals($expectedResult, $this->builder->build($buildSubject)); }
/** * @covers \Magento\BraintreeTwo\Gateway\Response\PayPalDetailsHandler::handle */ public function testHandle() { $paymentData = $this->getPaymentDataObjectMock(); $transaction = $this->getBraintreeTransaction(); $subject = ['payment' => $paymentData]; $response = ['object' => $transaction]; $this->subjectReader->expects(self::once())->method('readPayment')->with($subject)->willReturn($paymentData); $this->subjectReader->expects(self::once())->method('readTransaction')->with($response)->willReturn($transaction); $this->subjectReader->expects(static::once())->method('readPayPal')->with($transaction)->willReturn($transaction->paypal); $this->payment->expects(static::exactly(2))->method('setAdditionalInformation'); $this->payPalHandler->handle($subject, $response); }
/** * @covers \Magento\BraintreeTwo\Gateway\Response\ThreeDSecureDetailsHandler::handle */ public function testHandle() { $paymentData = $this->getPaymentDataObjectMock(); $transaction = $this->getBraintreeTransaction(); $subject = ['payment' => $paymentData]; $response = ['object' => $transaction]; $this->subjectReaderMock->expects(self::once())->method('readPayment')->with($subject)->willReturn($paymentData); $this->subjectReaderMock->expects(self::once())->method('readTransaction')->with($response)->willReturn($transaction); $this->payment->expects(static::at(1))->method('setAdditionalInformation')->with('liabilityShifted', 'Yes'); $this->payment->expects(static::at(2))->method('setAdditionalInformation')->with('liabilityShiftPossible', 'Yes'); $this->handler->handle($subject, $response); }
/** * @covers \Magento\Braintree\Gateway\Request\CaptureDataBuilder::build */ public function testBuild() { $transactionId = 'b3b99d'; $amount = 10.0; $expected = ['transaction_id' => $transactionId, 'amount' => $amount]; $buildSubject = ['payment' => $this->paymentDO, 'amount' => $amount]; $this->payment->expects(static::once())->method('getCcTransId')->willReturn($transactionId); $this->paymentDO->expects(static::once())->method('getPayment')->willReturn($this->payment); $this->subjectReaderMock->expects(self::once())->method('readPayment')->with($buildSubject)->willReturn($this->paymentDO); $this->subjectReaderMock->expects(self::once())->method('readAmount')->with($buildSubject)->willReturn($amount); static::assertEquals($expected, $this->builder->build($buildSubject)); }
public function testInitialize() { $order = $this->getMock('Magento\\Sales\\Model\\Order', [], [], '', false); $this->infoInstance->expects($this->any())->method('getOrder')->will($this->returnValue($order)); $this->infoInstance->expects($this->any())->method('setAdditionalInformation')->will($this->returnSelf()); $this->paypalConfig->expects($this->once())->method('getBuildNotationCode')->will($this->returnValue('build notation code')); $response = new \Magento\Framework\DataObject(['result' => '0', 'pnref' => 'V19A3D27B61E', 'respmsg' => 'Approved', 'authcode' => '510PNI', 'hostcode' => 'A', 'request_id' => 'f930d3dc6824c1f7230c5529dc37ae5e', 'result_code' => '0']); $this->gatewayMock->expects($this->once())->method('postRequest')->willReturn($response); $this->payflowRequest->expects($this->exactly(3))->method('setData')->willReturnMap([['user' => null, 'vendor' => null, 'partner' => null, 'pwd' => null, 'verbosity' => null, 'BNCODE' => 'build notation code', 'tender' => 'C'], $this->returnSelf()], ['USER1', 1, $this->returnSelf()], ['USER2', 'a20d3dc6824c1f7780c5529dc37ae5e', $this->returnSelf()]); $stateObject = new \Magento\Framework\DataObject(); $this->model->initialize(\Magento\Paypal\Model\Config::PAYMENT_ACTION_AUTH, $stateObject); }
/** * \Magento\BraintreeTwo\Gateway\Request\VaultCaptureDataBuilder::build */ public function testBuild() { $amount = 30.0; $token = '5tfm4c'; $buildSubject = ['payment' => $this->paymentDO, 'amount' => $amount]; $expected = ['amount' => $amount, 'paymentMethodToken' => $token]; $this->subjectReader->expects(self::once())->method('readPayment')->with($buildSubject)->willReturn($this->paymentDO); $this->subjectReader->expects(self::once())->method('readAmount')->with($buildSubject)->willReturn($amount); $paymentExtension = $this->getMockBuilder(OrderPaymentExtension::class)->setMethods(['getVaultPaymentToken'])->disableOriginalConstructor()->getMock(); $paymentToken = $this->getMockBuilder(PaymentToken::class)->disableOriginalConstructor()->getMock(); $paymentExtension->expects(static::once())->method('getVaultPaymentToken')->willReturn($paymentToken); $this->payment->expects(static::once())->method('getExtensionAttributes')->willReturn($paymentExtension); $paymentToken->expects(static::once())->method('getGatewayToken')->willReturn($token); $result = $this->builder->build($buildSubject); static::assertEquals($expected, $result); }
public function testExecuteUpdateAction() { $orderId = 30; $action = 'update'; $this->requestMock->expects($this->at(0))->method('getParam')->with('order_id')->willReturn($orderId); $this->requestMock->expects($this->at(1))->method('getParam')->with('action')->willReturn($action); $this->resultRedirectFactoryMock->expects($this->once())->method('create')->willReturn($this->resultRedirectMock); $this->objectManagerMock->expects($this->once())->method('create')->with('Magento\\Sales\\Model\\Order')->willReturn($this->orderMock); $this->orderMock->expects($this->once())->method('load')->with($orderId)->willReturn($this->orderMock); $this->orderMock->expects($this->any())->method('getId')->willReturn($orderId); $this->orderMock->expects($this->once())->method('getPayment')->willReturn($this->paymentMock); $this->orderMock->expects($this->once())->method('save')->willReturnSelf(); $this->messageManagerMock->expects($this->once())->method('addSuccess')->with('The payment update has been made.'); $this->resultRedirectMock->expects($this->once())->method('setPath')->with('sales/*/')->willReturnSelf(); $this->paymentMock->expects($this->once())->method('update'); $result = $this->reviewPayment->execute(); $this->assertEquals($this->resultRedirectMock, $result); }
public function testExecuteUpdateAction() { $orderId = 30; $action = 'update'; $this->requestMock->expects($this->at(0))->method('getParam')->with('order_id')->willReturn($orderId); $this->requestMock->expects($this->at(1))->method('getParam')->with('action')->willReturn($action); $this->resultRedirectFactoryMock->expects($this->once())->method('create')->willReturn($this->resultRedirectMock); $this->orderRepositoryMock->expects($this->once())->method('get')->with($orderId)->willReturn($this->orderMock); $this->orderMock->expects($this->any())->method('getEntityId')->willReturn($orderId); $this->orderMock->expects($this->any())->method('getPayment')->willReturn($this->paymentMock); $this->orderRepositoryMock->expects($this->once())->method('save')->with($this->orderMock)->willReturnSelf(); $this->paymentMock->expects($this->once())->method('update'); $this->paymentMock->expects($this->any())->method('getIsTransactionApproved')->willReturn(true); $this->messageManagerMock->expects($this->once())->method('addSuccess'); $this->resultRedirectMock->expects($this->once())->method('setPath')->with('sales/order/view')->willReturnSelf(); $result = $this->reviewPayment->execute(); $this->assertEquals($this->resultRedirectMock, $result); }
protected function setUp() { $this->paymentTokenMock = $this->getMockBuilder(PaymentToken::class)->setMethods(null)->disableOriginalConstructor()->getMock(); $this->paymentTokenFactoryMock = $this->getMockBuilder(PaymentTokenFactory::class)->setMethods(['create'])->disableOriginalConstructor()->getMock(); $this->paymentTokenFactoryMock->expects(self::once())->method('create')->willReturn($this->paymentTokenMock); $this->paymentExtension = $this->getMockBuilder(OrderPaymentExtensionInterface::class)->setMethods(['setVaultPaymentToken', 'getVaultPaymentToken', '__wakeup'])->disableOriginalConstructor()->getMock(); $this->paymentExtensionFactoryMock = $this->getMockBuilder(OrderPaymentExtensionFactory::class)->setMethods(['create'])->disableOriginalConstructor()->getMock(); $this->paymentExtensionFactoryMock->expects(self::once())->method('create')->willReturn($this->paymentExtension); // Sales Order Model $this->salesOrderMock = $this->getMockBuilder(Order::class)->setMethods(null)->disableOriginalConstructor()->getMock(); $this->payment = $this->getMockBuilder(Payment::class)->disableOriginalConstructor()->setMethods(['getMethod', 'getOrder'])->getMock(); $this->payment->expects(self::once())->method('getOrder')->willReturn($this->salesOrderMock); $this->vaultPaymentMock = $this->getMock(VaultPaymentInterface::class); $this->subjectReaderMock = $this->getMockBuilder(SubjectReader::class)->disableOriginalConstructor()->getMock(); $mapperArray = ["american-express" => "AE", "discover" => "DI", "jcb" => "JCB", "mastercard" => "MC", "master-card" => "MC", "visa" => "VI", "maestro" => "MI", "diners-club" => "DN", "unionpay" => "CUP"]; $this->configMock = $this->getMockBuilder(Config::class)->setMethods(['getCctypesMapper'])->disableOriginalConstructor()->getMock(); $this->configMock->expects(self::once())->method('getCctypesMapper')->willReturn($mapperArray); $this->paymentHandler = new VaultDetailsHandler($this->vaultPaymentMock, $this->paymentTokenFactoryMock, $this->paymentExtensionFactoryMock, $this->configMock, $this->subjectReaderMock); }
public function mockPay($hasForcedState, $forcedState) { $this->orderMock->expects($this->any())->method('getPayment')->willReturn($this->paymentMock); $this->paymentMock->expects($this->once())->method('hasForcedState')->willReturn($hasForcedState); if ($hasForcedState) { $this->paymentMock->expects($this->once())->method('getForcedState')->willReturn($forcedState); } else { $this->paymentMock->expects($this->never())->method('getForcedState'); } $this->paymentMock->expects($this->once())->method('pay')->with($this->model)->willReturnSelf(); $this->eventManagerMock->expects($this->once())->method('dispatch')->with('sales_order_invoice_pay'); }
/** * @covers \Magento\Braintree\Gateway\Command\CaptureStrategyCommand::execute */ public function testVaultCaptureExecute() { $paymentData = $this->getPaymentDataObjectMock(); $subject['payment'] = $paymentData; $this->subjectReaderMock->expects(self::once())->method('readPayment')->with($subject)->willReturn($paymentData); $this->payment->expects(static::once())->method('getAuthorizationTransaction')->willReturn(true); $this->payment->expects(static::once())->method('getId')->willReturn(1); $this->buildSearchCriteria(); $this->transactionRepository->expects(static::once())->method('getTotalCount')->willReturn(1); $this->commandPool->expects(static::once())->method('get')->with(CaptureStrategyCommand::VAULT_CAPTURE)->willReturn($this->command); $this->strategyCommand->execute($subject); }
public function testCheckAdvancedAcceptingByPaymentMethod() { $this->initLayoutMock(); $this->initOrderMock(self::LAST_REAL_ORDER_ID, Order::STATE_NEW); $this->initCheckoutSessionMock(self::LAST_REAL_ORDER_ID, true); $this->requestMock->expects($this->once())->method('getParam')->with('RESPMSG')->will($this->returnValue('message')); $this->blockMock->expects($this->at(0))->method('setData')->with('goto_section', 'paymentMethod')->will($this->returnSelf()); $this->blockMock->expects($this->at(1))->method('setData')->with('error_msg', __('Your payment has been declined. Please try again.'))->will($this->returnSelf()); $this->paymentMock->expects($this->once())->method('getMethod')->will($this->returnValue(Config::METHOD_PAYFLOWADVANCED)); $payflowadvancedReturnUrl = new PayflowadvancedReturnUrl($this->contextMock, $this->checkoutSessionMock, $this->orderFactoryMock, $this->payflowlinkFactoryMock, $this->helperCheckoutMock, $this->loggerMock); $payflowadvancedReturnUrl->execute(); }
public function testProcessRelation() { $this->addressHandlerMock->expects($this->once())->method('removeEmptyAddresses')->with($this->orderMock)->willReturnSelf(); $this->addressHandlerMock->expects($this->once())->method('process')->with($this->orderMock)->willReturnSelf(); $this->orderMock->expects($this->exactly(2))->method('getItems')->willReturn([$this->orderItemMock]); $this->orderMock->expects($this->exactly(3))->method('getId')->willReturn('order-id-value'); $this->orderItemMock->expects($this->once())->method('setOrderId')->with('order-id-value')->willReturnSelf(); $this->orderItemMock->expects($this->once())->method('setOrder')->with($this->orderMock)->willReturnSelf(); $this->orderItemRepositoryMock->expects($this->once())->method('save')->with($this->orderItemMock)->willReturnSelf(); $this->orderMock->expects($this->exactly(2))->method('getPayment')->willReturn($this->orderPaymentMock); $this->orderPaymentMock->expects($this->once())->method('setParentId')->with('order-id-value')->willReturnSelf(); $this->orderPaymentMock->expects($this->once())->method('setOrder')->with($this->orderMock)->willReturnSelf(); $this->orderPaymentResourceMock->expects($this->once())->method('save')->with($this->orderPaymentMock)->willReturnSelf(); $this->orderMock->expects($this->exactly(2))->method('getStatusHistories')->willReturn([$this->orderStatusHistoryMock]); $this->orderStatusHistoryMock->expects($this->once())->method('setParentId')->with('order-id-value')->willReturnSelf(); $this->orderStatusHistoryMock->expects($this->once())->method('setOrder')->with($this->orderMock)->willReturnSelf(); $this->statusHistoryResource->expects($this->once())->method('save')->with($this->orderStatusHistoryMock)->willReturnSelf(); $this->orderMock->expects($this->exactly(2))->method('getRelatedObjects')->willReturn([$this->orderInvoiceMock]); $this->orderInvoiceMock->expects($this->once())->method('setOrder')->with($this->orderMock)->willReturnSelf(); $this->orderInvoiceMock->expects($this->once())->method('save')->willReturnSelf(); $this->relationProcessor->processRelation($this->orderMock); }
/** * @covers \Magento\BraintreeTwo\Gateway\Command\CaptureStrategyCommand::execute */ public function testCloneExecute() { $paymentData = $this->getPaymentDataObjectMock(); $subject['payment'] = $paymentData; $this->subjectReaderMock->expects(self::once())->method('readPayment')->with($subject)->willReturn($paymentData); $this->payment->expects(static::once())->method('getAuthorizationTransaction')->willReturn(true); $this->payment->expects(static::once())->method('getId')->willReturn(1); $this->buildSearchCriteria(); $this->transactionRepository->expects(static::once())->method('getTotalCount')->willReturn(1); $paymentExtension = $this->getMockBuilder(OrderPaymentExtension::class)->setMethods(['getVaultPaymentToken'])->disableOriginalConstructor()->getMock(); $paymentExtension->expects(static::once())->method('getVaultPaymentToken')->willReturn(null); $this->payment->expects(static::once())->method('getExtensionAttributes')->willReturn($paymentExtension); $this->commandPool->expects(static::once())->method('get')->with(CaptureStrategyCommand::CLONE_TRANSACTION)->willReturn($this->command); $this->strategyCommand->execute($subject); }
/** * @param int $size * @param string $command * @covers \Magento\BraintreeTwo\Gateway\Command\CaptureStrategyCommand::execute * @dataProvider captureDataProvider */ public function testCaptureExecute($size, $command) { $paymentData = $this->getPaymentDataObjectMock(); $subject['payment'] = $paymentData; $this->subjectReaderMock->expects(self::once())->method('readPayment')->with($subject)->willReturn($paymentData); $this->payment->expects(static::once())->method('getAuthorizationTransaction')->willReturn(true); $this->payment->expects(static::once())->method('getId')->willReturn(1); $this->filterBuilder->expects(static::exactly(2))->method('setField')->willReturnSelf(); $this->filterBuilder->expects(static::exactly(2))->method('setValue')->willReturnSelf(); $searchCriteria = new SearchCriteria(); $this->searchCriteriaBuilder->expects(static::once())->method('addFilters')->willReturnSelf(); $this->searchCriteriaBuilder->expects(static::once())->method('create')->willReturn($searchCriteria); $this->transactionRepository->expects(static::once())->method('getList')->with($searchCriteria)->willReturnSelf(); $this->transactionRepository->expects(static::once())->method('getTotalCount')->willReturn($size); $this->commandPool->expects(static::once())->method('get')->with($command)->willReturn($this->command); $this->strategyCommand->execute($subject); }
/** * @param string $methodClass * @param bool $expectedResult * @depends testGetOrder * @dataProvider canShowTabDataProvider */ public function testCanShowTab($methodClass, $expectedResult) { $methodInstance = $this->objectManager->getObject($methodClass); $this->paymentMock->expects($this->any())->method('getMethodInstance')->willReturn($methodInstance); $this->assertEquals($expectedResult, $this->transactionsTab->canShowTab()); }
public function mockPay() { $this->orderMock->expects($this->any())->method('getPayment')->willReturn($this->paymentMock); $this->paymentMock->expects($this->once())->method('pay')->with($this->model)->willReturnSelf(); $this->eventManagerMock->expects($this->once())->method('dispatch')->with('sales_order_invoice_pay'); }