63 lines
1.8 KiB
PHP
Executable File
63 lines
1.8 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
|
|
/**
|
|
* Test to ensure that readme file present in specified directories
|
|
*/
|
|
namespace Magento\Test\Integrity;
|
|
|
|
use Magento\Framework\App\Utility\Files;
|
|
use \Magento\Framework\App\Bootstrap;
|
|
|
|
class TestPlacementTest extends \PHPUnit\Framework\TestCase
|
|
{
|
|
/** @var array */
|
|
private $scanList = ['dev/tests/unit/testsuite/Magento'];
|
|
|
|
/**
|
|
* @var string Path to project root
|
|
*/
|
|
private $root;
|
|
|
|
protected function setUp(): void
|
|
{
|
|
$this->root = BP;
|
|
}
|
|
|
|
public function testUnitTestFilesPlacement()
|
|
{
|
|
$objectManager = Bootstrap::create(BP, $_SERVER)->getObjectManager();
|
|
/** @var \Magento\Framework\Data\Collection\Filesystem $filesystem */
|
|
$filesystem = $objectManager->get(\Magento\Framework\Data\Collection\Filesystem::class);
|
|
$filesystem->setCollectDirs(false)
|
|
->setCollectFiles(true)
|
|
->setCollectRecursively(true);
|
|
|
|
$targetsExist = false;
|
|
foreach ($this->scanList as $dir) {
|
|
if (realpath($this->root . DIRECTORY_SEPARATOR . $dir)) {
|
|
$filesystem->addTargetDir($this->root . DIRECTORY_SEPARATOR . $dir);
|
|
$targetsExist = true;
|
|
}
|
|
}
|
|
|
|
if ($targetsExist) {
|
|
$files = $filesystem->load()->toArray();
|
|
$fileList = [];
|
|
foreach ($files['items'] as $file) {
|
|
$fileList[] = $file['filename'];
|
|
}
|
|
|
|
$this->assertEquals(
|
|
0,
|
|
$files['totalRecords'],
|
|
"The following files have been found in obsolete test directories: \n"
|
|
. implode("\n", $fileList)
|
|
);
|
|
}
|
|
}
|
|
}
|