Skip to content

Commit 702dde3

Browse files
committed
MC-34999: Storefront: Wrong behavior of the functional "Order by SKU" if use an existing similar sku
1 parent 1ee7e1f commit 702dde3

File tree

2 files changed

+75
-0
lines changed

2 files changed

+75
-0
lines changed
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
declare(strict_types=1);
7+
8+
use Magento\Catalog\Api\Data\ProductInterfaceFactory;
9+
use Magento\Catalog\Model\Product\Attribute\Source\Status;
10+
use Magento\Catalog\Model\Product\Type;
11+
use Magento\Catalog\Model\Product\Visibility;
12+
use Magento\Framework\ObjectManagerInterface;
13+
use Magento\Store\Api\WebsiteRepositoryInterface;
14+
use Magento\TestFramework\Helper\Bootstrap;
15+
use Magento\Catalog\Api\ProductRepositoryInterface;
16+
17+
/** @var ObjectManagerInterface $objectManager */
18+
$objectManager = Bootstrap::getObjectManager();
19+
/** @var WebsiteRepositoryInterface $websiteRepository */
20+
$websiteRepository = $objectManager->get(WebsiteRepositoryInterface::class);
21+
$baseWebsiteId = $websiteRepository->get('base')->getId();
22+
23+
$productFactory = $objectManager->get(ProductInterfaceFactory::class);
24+
$product = $productFactory->create();
25+
$product->setTypeId(Type::TYPE_SIMPLE)
26+
->setAttributeSetId($product->getDefaultAttributeSetId())
27+
->setWebsiteIds([$baseWebsiteId])
28+
->setName('Простий продукт')
29+
->setSku('Продукт')
30+
->setDescription('Повний опис продукту')
31+
->setShortDescription('Короткий опис')
32+
->setPrice(10)
33+
->setTaxClassId(0)
34+
->setVisibility(Visibility::VISIBILITY_BOTH)
35+
->setStatus(Status::STATUS_ENABLED)
36+
->setStockData(
37+
[
38+
'qty' => 100,
39+
'is_in_stock' => 1,
40+
'manage_stock' => 1,
41+
]
42+
);
43+
/** @var ProductRepositoryInterface $productRepository */
44+
$productRepository = $objectManager->get(ProductRepositoryInterface::class);
45+
$productRepository->save($product);
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?php
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
declare(strict_types=1);
7+
8+
use Magento\Catalog\Api\ProductRepositoryInterface;
9+
use Magento\Framework\Exception\NoSuchEntityException;
10+
use Magento\Framework\Registry;
11+
use Magento\TestFramework\Helper\Bootstrap;
12+
13+
/** @var Registry $registry */
14+
$registry = Bootstrap::getObjectManager()->get(Registry::class);
15+
16+
$registry->unregister('isSecureArea');
17+
$registry->register('isSecureArea', true);
18+
19+
/** @var ProductRepositoryInterface $productRepository */
20+
$productRepository = Bootstrap::getObjectManager()->get(ProductRepositoryInterface::class);
21+
22+
try {
23+
$product = $productRepository->get('Продукт', false, null, true);
24+
$productRepository->delete($product);
25+
} catch (NoSuchEntityException $exception) {
26+
//Product already removed
27+
}
28+
29+
$registry->unregister('isSecureArea');
30+
$registry->register('isSecureArea', false);

0 commit comments

Comments
 (0)