Skip to content

Commit 9126df4

Browse files
author
olysenko
committed
MAGETWO-64120: Error processing your request when placing reorder for simple product of configurable if attribute is changed
1 parent b84bc4b commit 9126df4

File tree

4 files changed

+15
-13
lines changed

4 files changed

+15
-13
lines changed

app/code/Magento/Sales/Controller/Adminhtml/Order/Create/Reorder.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,24 +30,24 @@ class Reorder extends \Magento\Sales\Controller\Adminhtml\Order\Create
3030
private $reorderHelper;
3131

3232
/**
33-
* @param UnavailableProductsProvider $unavailableProductsProvider
34-
* @param OrderRepositoryInterface $orderRepository
35-
* @param ReorderHelper $reorderHelper
3633
* @param Action\Context $context
3734
* @param \Magento\Catalog\Helper\Product $productHelper
3835
* @param \Magento\Framework\Escaper $escaper
3936
* @param PageFactory $resultPageFactory
4037
* @param ForwardFactory $resultForwardFactory
38+
* @param UnavailableProductsProvider $unavailableProductsProvider
39+
* @param OrderRepositoryInterface $orderRepository
40+
* @param ReorderHelper $reorderHelper
4141
*/
4242
public function __construct(
43-
UnavailableProductsProvider $unavailableProductsProvider,
44-
OrderRepositoryInterface $orderRepository,
45-
ReorderHelper $reorderHelper,
4643
Action\Context $context,
4744
\Magento\Catalog\Helper\Product $productHelper,
4845
\Magento\Framework\Escaper $escaper,
4946
PageFactory $resultPageFactory,
50-
ForwardFactory $resultForwardFactory
47+
ForwardFactory $resultForwardFactory,
48+
UnavailableProductsProvider $unavailableProductsProvider,
49+
OrderRepositoryInterface $orderRepository,
50+
ReorderHelper $reorderHelper
5151
) {
5252
$this->unavailableProductsProvider = $unavailableProductsProvider;
5353
$this->orderRepository = $orderRepository;

app/code/Magento/Sales/Test/Unit/Controller/Adminhtml/Order/Create/ReorderTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323

2424
/**
2525
* Class ReorderTest
26+
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
27+
* @SuppressWarnings(PHPMD.TooManyFields)
2628
*/
2729
class ReorderTest extends \PHPUnit_Framework_TestCase
2830
{

app/code/Magento/Sales/Test/Unit/Model/Order/Reorder/OrderProductAvailabilityCheckerTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,9 @@ protected function setUp()
6464
$this->configurableCheckerMock = $this->getMockBuilder(ConfigurableProductChecker::class)
6565
->disableOriginalConstructor()
6666
->getMock();
67-
$fakeInstanceMock = $this->getMockBuilder(FakeInstance::class)->getMock();
67+
$fakeClass = new \stdClass();
6868
$this->productAvailabilityChecks[$this->productTypeConfigurable] = $this->configurableCheckerMock;
69-
$this->productAvailabilityChecks[$this->productTypeSimple] = $fakeInstanceMock;
69+
$this->productAvailabilityChecks[$this->productTypeSimple] = $fakeClass;
7070

7171
$this->checker = $objectManager->getObject(
7272
OrderedProductAvailabilityChecker::class,

dev/tests/integration/testsuite/Magento/Sales/Model/Order/Reorder/UnavailableProductsProviderTest.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
*/
66
namespace Magento\Sales\Model\Order\Reorder;
77

8-
use Magento\Sales\Api\OrderRepositoryInterface;
8+
use Magento\Sales\Api\Data\OrderInterfaceFactory;
99

1010
/**
1111
* Class UnavailableProductsProviderTest
@@ -18,10 +18,10 @@ class UnavailableProductsProviderTest extends \PHPUnit_Framework_TestCase
1818
public function testGetForOrder()
1919
{
2020
$objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
21-
/** @var \Magento\Sales\Model\OrderRepository $orderRepository */
22-
$orderRepository = $objectManager->get(OrderRepositoryInterface::class);
21+
/** @var \Magento\Sales\Model\OrderFactory $orderFactory */
22+
$orderFactory = $objectManager->get(OrderInterfaceFactory::class);
2323
/** @var \Magento\Sales\Model\Order $order */
24-
$order = $orderRepository->get(1);
24+
$order = $orderFactory->create()->loadByIncrementId('100000001');
2525
$orderItems = $order->getItems();
2626
$orderItemSimple = $orderItems[2];
2727
$orderItemSimple->getSku();

0 commit comments

Comments
 (0)