Skip to content

Commit 52abf41

Browse files
committed
MAGETWO-58237: Order status history contains wrong data after creation of a Credit Memo. Add functional assertion
1 parent f8d93e7 commit 52abf41

File tree

3 files changed

+72
-0
lines changed

3 files changed

+72
-0
lines changed

dev/tests/functional/tests/app/Magento/Sales/Test/Block/Adminhtml/Order/History.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,13 @@ class History extends Block
2121
*/
2222
protected $commentHistory = '.note-list-comment';
2323

24+
/**
25+
* Comment history status.
26+
*
27+
* @var string
28+
*/
29+
protected $commentHistoryStatus = '.note-list-status';
30+
2431
/**
2532
* Authorized Amount.
2633
*
@@ -103,6 +110,17 @@ public function getRefundedAmount()
103110
return $result;
104111
}
105112

113+
/**
114+
* Gets the status which presented in comment
115+
*
116+
* @return string
117+
*/
118+
public function getStatus()
119+
{
120+
$this->waitCommentsHistory();
121+
return $this->_rootElement->find($this->commentHistoryStatus, Locator::SELECTOR_CSS)->getText();
122+
}
123+
106124
/**
107125
* Wait for comments history is visible.
108126
*
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
<?php
2+
/**
3+
* Copyright © 2016 Magento. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\Sales\Test\Constraint;
7+
8+
use Magento\Sales\Test\Page\Adminhtml\SalesOrderView;
9+
use Magento\Sales\Test\Page\Adminhtml\OrderIndex;
10+
use Magento\Mtf\Constraint\AbstractConstraint;
11+
use Magento\Sales\Test\Fixture\OrderInjectable;
12+
13+
/**
14+
* Class AssertRefundOrderStatusInCommentsHistory
15+
*/
16+
class AssertRefundOrderStatusInCommentsHistory extends AbstractConstraint
17+
{
18+
/**
19+
* Message about refunded amount in order.
20+
*/
21+
const REFUNDED_AMOUNT = 'We refunded $';
22+
23+
/**
24+
* Assert that comment about refunded amount exist in Comments History section on order page in Admin.
25+
*
26+
* @param SalesOrderView $salesOrderView
27+
* @param OrderIndex $salesOrder
28+
* @param OrderInjectable $order
29+
* @return void
30+
*/
31+
public function processAssert(
32+
SalesOrderView $salesOrderView,
33+
OrderIndex $salesOrder,
34+
OrderInjectable $order
35+
) {
36+
$salesOrder->open();
37+
$salesOrder->getSalesOrderGrid()->searchAndOpen(['id' => $order->getId()]);
38+
\PHPUnit_Framework_Assert::assertContains(
39+
$salesOrderView->getOrderForm()->getOrderInfoBlock()->getOrderStatus(),
40+
$salesOrderView->getOrderHistoryBlock()->getStatus()
41+
);
42+
}
43+
44+
/**
45+
* Returns string representation of successful assertion.
46+
*
47+
* @return string
48+
*/
49+
public function toString()
50+
{
51+
return "Message about refunded amount is available in Comments History section.";
52+
}
53+
}

dev/tests/functional/tests/app/Magento/Sales/Test/TestCase/CreateCreditMemoEntityTest.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
<constraint name="Magento\Sales\Test\Constraint\AssertCreditMemoButton" />
1919
<constraint name="Magento\Sales\Test\Constraint\AssertRefundInCreditMemoTab" />
2020
<constraint name="Magento\Sales\Test\Constraint\AssertRefundInRefundsGrid" />
21+
<constraint name="Magento\Sales\Test\Constraint\AssertRefundOrderStatusInCommentsHistory" />
2122
<constraint name="Magento\Sales\Test\Constraint\AssertRefundedGrandTotalOnFrontend" />
2223
<constraint name="Magento\Catalog\Test\Constraint\AssertProductForm" />
2324
<constraint name="Magento\Sales\Test\Constraint\AssertCreditMemoItems" />

0 commit comments

Comments
 (0)