/
githubmirror
/
magento2
Обзор
Документация
Войти
/
githubmirror
/
magento2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.4-develop
dev/tests/integration/testsuite/Magento/Downloadable/Model/Observer/SetLinkStatusObserverTest.php
69 строк
2 KB
Alexandra Zota
ACP2E-4019: CE copyright updates for 2.4.9-beta1
22 окт 2025, 10:44
22 окт 2025, 10:44
264bea2
Код
Авторство
О чём код?
<?php /** * Copyright 2017 Adobe * All Rights Reserved. */ namespace Magento\Downloadable\Model\Observer; /** * Integration test for case, when customer is able to download * downloadable product, after order was canceled. */ class SetLinkStatusObserverTest extends \PHPUnit\Framework\TestCase { /** * Object manager * @var \Magento\Framework\ObjectManagerInterface */ private $objectManager; /** * Initialization of dependencies */ protected function setUp(): void { $this->objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); } /** * Asserting, that links status is expired after canceling of order. * This test relates to the GitHub issue magento/magento2#8515. * * @magentoDataFixture Magento/Downloadable/_files/product_downloadable.php * @magentoDataFixture Magento/Downloadable/_files/order_with_downloadable_product.php * @magentoDbIsolation disabled */ public function testCheckStatusOnOrderCancel() { /** @var \Magento\Sales\Model\Order $order */ $order = $this->objectManager->create(\Magento\Sales\Model\Order::class); $order->loadByIncrementId('100000001'); $orderItems = $order->getAllItems(); $items = array_values($orderItems); /** @var \Magento\Sales\Model\Order\Item $orderItem */ $orderItem = array_shift($items); /** Canceling order to reproduce test case */ $order->setState(\Magento\Sales\Model\Order::STATE_CANCELED); $order->save(); /** @var \Magento\Downloadable\Model\ResourceModel\Link\Purchased\Item\Collection $linkCollection */ $linkCollection = $this->objectManager->create( \Magento\Downloadable\Model\ResourceModel\Link\Purchased\Item\CollectionFactory::class )->create(); $linkCollection->addFieldToFilter('order_item_id', $orderItem->getId()); /** Assert there are items in linkCollection to avoid false-positive test result. */ $this->assertGreaterThan(0, $linkCollection->count()); /** @var \Magento\Downloadable\Model\Link\Purchased\Item $linkItem */ foreach ($linkCollection->getItems() as $linkItem) { $this->assertEquals( \Magento\Downloadable\Model\Link\Purchased\Item::LINK_STATUS_EXPIRED, $linkItem->getStatus() ); } } }