![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-paypal/Test/Unit/Block/Adminhtml/Order/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Paypal\Test\Unit\Block\Adminhtml\Order; use Magento\Framework\Exception\LocalizedException; use Magento\Framework\TestFramework\Unit\Helper\ObjectManager; use Magento\Paypal\Block\Adminhtml\Order\View; use Magento\Paypal\Model\Adminhtml\Express; use Magento\Sales\Model\Order; use Magento\Sales\Model\Order\Payment; use PHPUnit\Framework\MockObject\MockObject; use PHPUnit\Framework\TestCase; /** * Test adminhtml sales order view. */ class ViewTest extends TestCase { /** * @var View */ private $view; /** * @var Express|MockObject */ private $express; /** * @var Payment|MockObject */ private $payment; /** * @var Order|MockObject */ private $order; protected function setUp(): void { $objectManager = new ObjectManager($this); $this->order = $this->createPartialMock( Order::class, ['canUnhold', 'isPaymentReview', 'getState', 'isCanceled', 'getPayment'] ); $this->express = $this->createPartialMock( Express::class, ['isOrderAuthorizationAllowed'] ); $this->payment = $this->createMock(Payment::class); $this->view = $objectManager->getObject( View::class, [ 'express' => $this->express, 'data' => [], ] ); } /** * Tests if authorization action is allowed for order. * * @param bool $canUnhold * @param bool $isPaymentReview * @param bool $isCanceled * @param bool $authAllowed * @param string $orderState * @param bool $canAuthorize * @throws LocalizedException * @dataProvider orderDataProvider */ public function testIsOrderAuthorizationAllowed( bool $canUnhold, bool $isPaymentReview, bool $isCanceled, bool $authAllowed, string $orderState, bool $canAuthorize ) { $this->order->method('canUnhold') ->willReturn($canUnhold); $this->order->method('isPaymentReview') ->willReturn($isPaymentReview); $this->order->method('isCanceled') ->willReturn($isCanceled); $this->order->method('getState') ->willReturn($orderState); $this->order->method('getPayment') ->willReturn($this->payment); $this->express->method('isOrderAuthorizationAllowed') ->with($this->payment) ->willReturn($authAllowed); $this->assertEquals($canAuthorize, $this->view->canAuthorize($this->order)); } /** * Data provider for order methods call. * * @return array */ public function orderDataProvider(): array { return [ [true, false, false, true, Order::STATE_PROCESSING, false], [false, true, false, true, Order::STATE_PROCESSING, false], [false, false, true, true, Order::STATE_PROCESSING, false], [false, false, false, false, Order::STATE_PROCESSING, false], [false, false, false, true, Order::STATE_COMPLETE, false], [false, false, false, true, Order::STATE_CLOSED, false], [false, false, false, true, Order::STATE_PROCESSING, true], ]; } }