8 use Magento\Braintree\Test\Fixture\BraintreeSandboxCustomer;
9 use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
10 use Magento\Sales\Test\Page\Adminhtml\SalesOrderView;
11 use Magento\Mtf\ObjectManagerFactory;
12 use Braintree\Gateway;
13 use Magento\Mtf\TestStep\TestStepInterface;
25 private $braintreeSandboxCustomer;
39 private $salesOrderView;
55 BraintreeSandboxCustomer $braintreeSandboxCustomer,
56 OrderIndex $salesOrder,
57 SalesOrderView $salesOrderView,
60 $this->braintreeSandboxCustomer = $braintreeSandboxCustomer;
61 $this->salesOrder = $salesOrder;
62 $this->salesOrderView = $salesOrderView;
63 $this->orderId = $orderId;
73 $credentials = $this->braintreeSandboxCustomer->getData();
74 $gateway = ObjectManagerFactory::getObjectManager()->create(Gateway::class, [
'config' => $credentials]);
75 $transactionId = $this->getTransactionId();
76 $gateway->testing()->settle($transactionId);
84 private function getTransactionId()
86 $this->salesOrder->open();
87 $this->salesOrder->getSalesOrderGrid()->searchAndOpen([
'id' => $this->orderId]);
88 $this->salesOrderView->getOrderForm()->openTab(
'transactions');
89 $actualTransactions = $this->salesOrderView->getOrderForm()->getTab(
'transactions')->getGridBlock()->getIds();
91 return current(array_keys($actualTransactions));
__construct(BraintreeSandboxCustomer $braintreeSandboxCustomer, OrderIndex $salesOrder, SalesOrderView $salesOrderView, $orderId)