From 0b86f931a9e083a102c3347a7e87ca67c4bdcbc8 Mon Sep 17 00:00:00 2001 From: Rykh Oleksandr <orykh@magento.com> Date: Fri, 6 Jan 2017 15:46:22 +0200 Subject: [PATCH] MTA-3901: Add variation for Partial Refund an order placed through Braintree with Partial capture - fixed fail with comments --- .../Magento/Checkout/Test/Fixture/Cart/Items.php | 4 +--- .../Test/Fixture/Cart/Item.php | 6 +++++- .../Test/TestCase/CreateOnlineCreditMemoTest.xml | 16 +++++++++++----- .../Order/View/Tab/Info/CommentsHistoryBlock.php | 5 ++++- .../AssertCaptureInCommentsHistory.php | 2 +- .../Constraint/AssertRefundInCommentsHistory.php | 2 +- .../Sales/Test/TestStep/SubmitOrderStep.php | 1 - .../Block/Product/ProductList/ProductItem.php | 4 +++- .../ConfigurableProduct/CheckoutData.xml | 4 ++++ 9 files changed, 30 insertions(+), 14 deletions(-) diff --git a/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart/Items.php b/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart/Items.php index 1d81b595b9b..117a028d835 100644 --- a/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart/Items.php +++ b/dev/tests/functional/tests/app/Magento/Checkout/Test/Fixture/Cart/Items.php @@ -53,8 +53,6 @@ class Items extends DataSource * * @param null|string $key * @return array - * - * @SuppressWarnings(PHPMD.UnusedFormalParameter) */ public function getData($key = null) { @@ -65,7 +63,7 @@ class Items extends DataSource $this->data[] = $item; } - return $this->data; + return parent::getData($key); } /** diff --git a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/Cart/Item.php b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/Cart/Item.php index 46cf2ceefe8..d317d1686a9 100644 --- a/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/Cart/Item.php +++ b/dev/tests/functional/tests/app/Magento/ConfigurableProduct/Test/Fixture/Cart/Item.php @@ -48,7 +48,11 @@ class Item extends \Magento\Catalog\Test\Fixture\Cart\Item ]; } $attributeKey = implode(' ', $attributeKey); - $cartItem['sku'] = $productData['configurable_attributes_data']['matrix'][$attributeKey]['sku']; + if (isset($productData['configurable_attributes_data']['matrix'][$attributeKey])) { + $cartItem['sku'] = $productData['configurable_attributes_data']['matrix'][$attributeKey]['sku']; + } else { + $cartItem['sku'] = $productData['sku']; + } $cartItem['name'] = $productData['name']; $cartItem['options'] = isset($cartItem['options']) diff --git a/dev/tests/functional/tests/app/Magento/Paypal/Test/TestCase/CreateOnlineCreditMemoTest.xml b/dev/tests/functional/tests/app/Magento/Paypal/Test/TestCase/CreateOnlineCreditMemoTest.xml index 215764edfb4..c0bde12b15a 100644 --- a/dev/tests/functional/tests/app/Magento/Paypal/Test/TestCase/CreateOnlineCreditMemoTest.xml +++ b/dev/tests/functional/tests/app/Magento/Paypal/Test/TestCase/CreateOnlineCreditMemoTest.xml @@ -8,6 +8,7 @@ <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../../vendor/magento/mtf/etc/variations.xsd"> <testCase name="Magento\Sales\Test\TestCase\CreateOnlineCreditMemoTest" summary="Create online credit memo for order placed with online payment method"> <variation name="CreateOnlineCreditMemoPaymentsProTestVariation1" summary="Create Refund for Order Paid with PayPal Payments Pro" ticketId="MAGETWO-13059"> + <data name="tag" xsi:type="string">test_type:3rd_party_test, severity:S0</data> <data name="products/0" xsi:type="string">catalogProductSimple::product_10_dollar</data> <data name="customer/dataset" xsi:type="string">default</data> <data name="checkoutMethod" xsi:type="string">guest</data> @@ -38,7 +39,6 @@ <item name="transactionType" xsi:type="string">Capture</item> <item name="statusIsClosed" xsi:type="string">Yes</item> </data> - <data name="tag" xsi:type="string">test_type:3rd_party_test, severity:S0</data> <constraint name="Magento\Sales\Test\Constraint\AssertRefundSuccessCreateMessage" /> <constraint name="Magento\Sales\Test\Constraint\AssertOrderStatusIsCorrect" /> <constraint name="Magento\Sales\Test\Constraint\AssertRefundInCommentsHistory" /> @@ -46,11 +46,19 @@ <constraint name="Magento\Sales\Test\Constraint\AssertTransactionStatus" /> </variation> <variation name="CreateOnlineCreditMemoPayflowProVariation1" summary="Create Refund for Order Paid with PayPal Payflow Pro" ticketId="MAGETWO-13063"> + <data name="tag" xsi:type="string">test_type:3rd_party_test, severity:S0</data> <data name="products/0" xsi:type="string">catalogProductSimple::product_10_dollar</data> <data name="customer/dataset" xsi:type="string">default</data> <data name="checkoutMethod" xsi:type="string">guest</data> - <data name="refundedPrices" xsi:type="array"> - <item name="0" xsi:type="string">15.00</item> + <data name="order/data/refund" xsi:type="array"> + <item name="0" xsi:type="array"> + <item name="invoiceId" xsi:type="string">0</item> + </item> + </data> + <data name="order/data/price/refund" xsi:type="array"> + <item name="0" xsi:type="array"> + <item name="grand_creditmemo_total" xsi:type="string">15.00</item> + </item> </data> <data name="shippingAddress/dataset" xsi:type="string">US_address_1_without_email</data> <data name="shipping/shipping_service" xsi:type="string">Flat Rate</data> @@ -58,7 +66,6 @@ <data name="payment/method" xsi:type="string">payflowpro</data> <data name="configData" xsi:type="string">payflowpro</data> <data name="creditCard/dataset" xsi:type="string">visa_default</data> - <data name="data/items_data/0/qty" xsi:type="string">-</data> <data name="status" xsi:type="string">Closed</data> <data name="transactions/Authorization" xsi:type="array"> <item name="transactionType" xsi:type="string">Authorization</item> @@ -72,7 +79,6 @@ <item name="transactionType" xsi:type="string">Capture</item> <item name="statusIsClosed" xsi:type="string">Yes</item> </data> - <data name="tag" xsi:type="string">test_type:3rd_party_test, severity:S0</data> <constraint name="Magento\Sales\Test\Constraint\AssertRefundSuccessCreateMessage" /> <constraint name="Magento\Sales\Test\Constraint\AssertOrderStatusIsCorrect" /> <constraint name="Magento\Sales\Test\Constraint\AssertRefundInCommentsHistory" /> diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Info/CommentsHistoryBlock.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Info/CommentsHistoryBlock.php index ce36ae7324c..61f6f923016 100644 --- a/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Info/CommentsHistoryBlock.php +++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/View/Tab/Info/CommentsHistoryBlock.php @@ -70,8 +70,11 @@ class CommentsHistoryBlock extends Block 'time' => $item->find($this->commentHistoryTime)->getText(), 'status' => $item->find($this->commentHistoryStatus)->getText(), 'is_customer_notified' => $item->find($this->commentHistoryNotifiedStatus)->getText(), - 'comment' => $item->find($this->comment)->getText() + 'comment' => '', ]; + if ($item->find($this->comment)->isVisible()) { + $result[$key]['comment'] = $item->find($this->comment)->getText(); + } } return $result; diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertCaptureInCommentsHistory.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertCaptureInCommentsHistory.php index cfaf95bbdeb..48670ab4546 100644 --- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertCaptureInCommentsHistory.php +++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertCaptureInCommentsHistory.php @@ -43,7 +43,7 @@ class AssertCaptureInCommentsHistory extends AbstractConstraint $comments = $infoTab->getCommentsHistoryBlock()->getComments(); foreach ($comments as $key => $comment) { - if (stristr($comment['comment'], 'captured') === false) { + if (strstr($comment['comment'], 'Captured') === false) { unset($comments[$key]); } } diff --git a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInCommentsHistory.php b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInCommentsHistory.php index 2b68473a7fb..949fd22e3b2 100644 --- a/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInCommentsHistory.php +++ b/dev/tests/functional/tests/app/Magento/Sales/Test/Constraint/AssertRefundInCommentsHistory.php @@ -48,7 +48,7 @@ class AssertRefundInCommentsHistory extends AbstractConstraint unset($comments[$key]); } } - $comments = array_values($comments); + $comments = array_reverse(array_values($comments)); $refundedPrices = $order->getPrice()['refund']; foreach ($refundedPrices as $key => $refundedPrice) { 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 3967b6571ba..134f7add98f 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 @@ -61,7 +61,6 @@ class SubmitOrderStep implements TestStepInterface private $products; /** - * @constructor * @param OrderCreateIndex $orderCreateIndex * @param SalesOrderView $salesOrderView * @param FixtureFactory $fixtureFactory diff --git a/dev/tests/functional/tests/app/Magento/Swatches/Test/Block/Product/ProductList/ProductItem.php b/dev/tests/functional/tests/app/Magento/Swatches/Test/Block/Product/ProductList/ProductItem.php index 414d03bc687..a69e9e4f49c 100755 --- a/dev/tests/functional/tests/app/Magento/Swatches/Test/Block/Product/ProductList/ProductItem.php +++ b/dev/tests/functional/tests/app/Magento/Swatches/Test/Block/Product/ProductList/ProductItem.php @@ -36,7 +36,9 @@ class ProductItem extends CatalogProductItem $attributes = $confAttrSource->getAttributes(); foreach ($options as $option) { - if (!isset($attributes[$option['title']])) { + if (!isset($attributes[$option['title']]) + || stripos ($attributes[$option['title']]->getFrontendInput(), "swatch") === false + ) { continue; } $availableOptions = $attributes[$option['title']]->getOptions(); diff --git a/dev/tests/functional/tests/app/Magento/Swatches/Test/Repository/ConfigurableProduct/CheckoutData.xml b/dev/tests/functional/tests/app/Magento/Swatches/Test/Repository/ConfigurableProduct/CheckoutData.xml index 9b369d5a536..9e909245b88 100644 --- a/dev/tests/functional/tests/app/Magento/Swatches/Test/Repository/ConfigurableProduct/CheckoutData.xml +++ b/dev/tests/functional/tests/app/Magento/Swatches/Test/Repository/ConfigurableProduct/CheckoutData.xml @@ -34,6 +34,10 @@ <item name="title" xsi:type="string">attribute_key_0</item> <item name="value" xsi:type="string">option_key_1</item> </item> + <item name="1" xsi:type="array"> + <item name="title" xsi:type="string">attribute_key_1</item> + <item name="value" xsi:type="string">option_key_1</item> + </item> </item> </field> <field name="qty" xsi:type="string">1</field> -- GitLab