Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
PlaceOrderWith3dSecureStep.php
Go to the documentation of this file.
1 <?php
8 
10 use Magento\Checkout\Test\Page\CheckoutOnepage;
11 use Magento\Checkout\Test\Page\CheckoutOnepageSuccess;
12 use Magento\Mtf\TestStep\TestStepInterface;
13 use Magento\Braintree\Test\Fixture\Secure3dBraintree;
14 
18 class PlaceOrderWith3dSecureStep implements TestStepInterface
19 {
25  protected $checkoutOnepage;
26 
32  private $secure3d;
33 
39  private $assertGrandTotalOrderReview;
40 
46  private $checkoutOnepageSuccess;
47 
53  private $prices;
54 
63  public function __construct(
64  CheckoutOnepage $checkoutOnepage,
65  AssertGrandTotalOrderReview $assertGrandTotalOrderReview,
66  CheckoutOnepageSuccess $checkoutOnepageSuccess,
67  Secure3dBraintree $secure3d,
68  array $prices = []
69  ) {
70  $this->checkoutOnepage = $checkoutOnepage;
71  $this->secure3d = $secure3d;
72  $this->assertGrandTotalOrderReview = $assertGrandTotalOrderReview;
73  $this->checkoutOnepageSuccess = $checkoutOnepageSuccess;
74  $this->prices = $prices;
75  }
76 
82  public function run()
83  {
84  if (isset($this->prices['grandTotal'])) {
85  $this->assertGrandTotalOrderReview->processAssert($this->checkoutOnepage, $this->prices['grandTotal']);
86  }
87  $this->checkoutOnepage->getPaymentBlock()->getSelectedPaymentMethodBlock()->clickPlaceOrder();
88 
89  $this->checkoutOnepage->getBraintree3dSecureBlock()->fill($this->secure3d);
90  return ['orderId' => $this->checkoutOnepageSuccess->getSuccessBlock()->getGuestOrderId()];
91  }
92 }
__construct(CheckoutOnepage $checkoutOnepage, AssertGrandTotalOrderReview $assertGrandTotalOrderReview, CheckoutOnepageSuccess $checkoutOnepageSuccess, Secure3dBraintree $secure3d, array $prices=[])