/
githubmirror
/
magento2
Обзор
Документация
Войти
/
githubmirror
/
magento2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.4-develop
dev/tests/integration/testsuite/Magento/Analytics/Cron/CollectDataTest.php
91 строка
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 2020 Adobe * All Rights Reserved. */ declare(strict_types=1); namespace Magento\Analytics\Cron; use Magento\Framework\App\Filesystem\DirectoryList; use Magento\Framework\Filesystem; use Magento\Framework\Filesystem\Directory\WriteInterface; use Magento\Framework\ObjectManagerInterface; use Magento\TestFramework\Helper\Bootstrap; use PHPUnit\Framework\TestCase; /** * Checks data collection process behaviour * * @see \Magento\Analytics\Cron\CollectData * * @magentoAppArea adminhtml */ class CollectDataTest extends TestCase { /** @var ObjectManagerInterface */ private $objectManager; /** @var CollectData */ private $collectDataService; /** @var WriteInterface */ private $mediaDirectory; /** * @inheritdoc */ protected function setUp(): void { parent::setUp(); $this->objectManager = Bootstrap::getObjectManager(); $this->collectDataService = $this->objectManager->get(CollectData::class); $this->mediaDirectory = $this->objectManager->get(Filesystem::class)->getDirectoryWrite(DirectoryList::MEDIA); $this->removeAnalyticsDirectory(); } /** * @inheritdoc */ protected function tearDown(): void { $this->removeAnalyticsDirectory(); parent::tearDown(); } /** * @magentoConfigFixture current_store analytics/subscription/enabled 1 * @magentoConfigFixture default/analytics/general/token 123 * * @return void */ public function testExecute(): void { $this->collectDataService->execute(); $this->assertTrue( $this->mediaDirectory->isDirectory('analytics'), 'Analytics was not created' ); $files = $this->mediaDirectory->getDriver() ->readDirectoryRecursively($this->mediaDirectory->getAbsolutePath('analytics')); $file = array_filter($files, function ($element) { return substr($element, -8) === 'data.tgz'; }); $this->assertNotEmpty($file, 'File was not created'); } /** * Remove Analytics directory * * @return void */ private function removeAnalyticsDirectory(): void { $directoryToRemove = $this->mediaDirectory->getAbsolutePath('analytics'); if ($this->mediaDirectory->isDirectory($directoryToRemove)) { $this->mediaDirectory->delete($directoryToRemove); } } }