diff --git a/dev/tests/functional/tests/app/Magento/Braintree/Test/etc/testcase.xml b/dev/tests/functional/tests/app/Magento/Braintree/Test/etc/testcase.xml index 495f455c43a72f4d61029a07a8633fc09744c2f0..12aa92d35064d457cef4a544daace01314723d99 100644 --- a/dev/tests/functional/tests/app/Magento/Braintree/Test/etc/testcase.xml +++ b/dev/tests/functional/tests/app/Magento/Braintree/Test/etc/testcase.xml @@ -106,8 +106,8 @@ <step name="selectPaymentMethod" module="Magento_Checkout" next="fillBillingInformation" /> <step name="fillBillingInformation" module="Magento_Checkout" next="placeOrderWithPaypal" /> <step name="placeOrderWithPaypal" module="Magento_Braintree" next="createInvoice" /> - <step name="createInvoice" module="Magento_Sales" next="createBraintreeCreditMemo" /> - <step name="createBraintreeCreditMemo" module="Magento_Braintree" /> + <step name="createInvoice" module="Magento_Sales" next="createOnlineCreditMemo" /> + <step name="createOnlineCreditMemo" module="Magento_Sales" /> </scenario> <scenario name="SaveUseDeleteVaultForPaypalBraintreeTest" firstStep="setupConfiguration"> <step name="setupConfiguration" module="Magento_Config" next="createProducts" /> diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Transactions.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Transactions.php index 80309405fcd05e9206e5732c1f6c3e4eb973c620..64e449c805b2807844c88bfa36a821b20adcfd04 100644 --- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Transactions.php +++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Transactions.php @@ -8,7 +8,7 @@ namespace Magento\Sales\Test\Block\Adminhtml\Order\View\Tab; use Magento\Backend\Test\Block\Widget\Tab; use Magento\Mtf\Client\Locator; -use Magento\Sales\Test\Block\Adminhtml\Order\View\Tab\Shipments\Grid; +use Magento\Sales\Test\Block\Adminhtml\Order\View\Tab\Transactions\Grid; /** * Transactions tab. diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertTransactionStatus.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertTransactionStatus.php new file mode 100644 index 0000000000000000000000000000000000000000..fb975ae4bd1c6bfdc8f5ce3fea9f094f1e4e45e4 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertTransactionStatus.php @@ -0,0 +1,61 @@ +<?php +/** + * Copyright © 2016 Magento. All rights reserved. + * See COPYING.txt for license details. + */ + +namespace Magento\Sales\Test\Constraint; + +use Magento\Sales\Test\Page\Adminhtml\OrderIndex; +use Magento\Sales\Test\Page\Adminhtml\SalesOrderView; +use Magento\Mtf\Constraint\AbstractConstraint; + +/** + * Assert that transactions status is closed on order page in Admin. + */ +class AssertTransactionStatus extends AbstractConstraint +{ + /** + * Assert that transactions status is closed on order page in Admin. + * + * @param OrderIndex $salesOrder + * @param SalesOrderView $salesOrderView + * @param array $transactions + * @param string $orderId + * @return void + */ + public function processAssert( + OrderIndex $salesOrder, + SalesOrderView $salesOrderView, + array $transactions, + $orderId + ) { + $salesOrder->open(); + $salesOrder->getSalesOrderGrid()->searchAndOpen(['id' => $orderId]); + $salesOrderView->getOrderForm()->openTab('transactions'); + $actualTransactions = $salesOrderView->getOrderForm()->getTab('transactions')->getGridBlock()->getIds(); + + foreach ($transactions as $transaction) { + foreach ($actualTransactions as $actualTransaction) { + if ($actualTransaction['transactionType'] === $transaction['transactionType']) { + \PHPUnit_Framework_Assert::assertEquals( + $transaction['statusIsClosed'], + $actualTransaction['statusIsClosed'], + 'The ' . $transaction['transactionType'] . ' transaction status is not closed.' + ); + break; + } + } + } + } + + /** + * Returns a string representation of the object. + * + * @return string + */ + public function toString() + { + return 'Transactions status is closed.'; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Braintree/Test/TestStep/CreateBraintreeCreditMemoStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/CreateOnlineCreditMemoStep.php similarity index 93% rename from dev/tests/functional/tests/app/Magento/Braintree/Test/TestStep/CreateBraintreeCreditMemoStep.php rename to dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/CreateOnlineCreditMemoStep.php index 085fc142a33736e1aec9fb2cc1a0771e37ffd34e..84491c1992e5d682c59a1848516fcf084ce42507 100644 --- a/dev/tests/functional/tests/app/Magento/Braintree/Test/TestStep/CreateBraintreeCreditMemoStep.php +++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/CreateOnlineCreditMemoStep.php @@ -4,9 +4,8 @@ * See COPYING.txt for license details. */ -namespace Magento\Braintree\Test\TestStep; +namespace Magento\Sales\Test\TestStep; -use Magento\Mtf\ObjectManager; use Magento\Mtf\TestStep\TestStepInterface; use Magento\Sales\Test\Fixture\OrderInjectable; use Magento\Sales\Test\Page\Adminhtml\OrderCreditMemoNew; @@ -15,9 +14,9 @@ use Magento\Sales\Test\Page\Adminhtml\OrderInvoiceView; use Magento\Sales\Test\Page\Adminhtml\SalesOrderView; /** - * Create credit memo for order placed via Braintree credit card payment method. + * Create credit memo for order placed using online payment methods. */ -class CreateBraintreeCreditMemoStep implements TestStepInterface +class CreateOnlineCreditMemoStep implements TestStepInterface { /** * Orders Page. diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SubmitOrderStep.php b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SubmitOrderStep.php index fa37c94be3cdda2b7814a2dab3d11b0a4272dc04..0a82770fab38bbe574b77b0bb4e08eadbdc01a3f 100644 --- a/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SubmitOrderStep.php +++ b/dev/tests/functional/tests/app/Magento/Sales/Test/TestStep/SubmitOrderStep.php @@ -23,21 +23,42 @@ class SubmitOrderStep implements TestStepInterface * * @var OrderCreateIndex */ - protected $orderCreateIndex; + private $orderCreateIndex; /** * Sales order view. * * @var SalesOrderView */ - protected $salesOrderView; + private $salesOrderView; /** * Factory for fixtures. * * @var FixtureFactory */ - protected $fixtureFactory; + private $fixtureFactory; + + /** + * Customer fixture. + * + * @var Customer + */ + private $customer; + + /** + * Billing Address fixture. + * + * @var Address + */ + private $billingAddress; + + /** + * Products fixtures. + * + * @var array|\Magento\Mtf\Fixture\FixtureInterface[] + */ + private $products; /** * @constructor