magento2-docker/dev/tests/static/testsuite/Magento/Test/Legacy/LibraryLocationTest.php

64 lines
1.6 KiB
PHP

<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
/**
* Verify that there are no files in the old locations of web and php libraries
*/
namespace Magento\Test\Legacy;
class LibraryLocationTest extends \PHPUnit\Framework\TestCase
{
/**
* Root path of Magento
*
* @var string
*/
protected static $root;
public static function setUpBeforeClass(): void
{
self::$root = BP;
}
public function testOldWebLibrariesLocation()
{
$oldLocation = self::$root . '/pub/lib';
$this->assertFileDoesNotExist($oldLocation, "The web libraries have been moved from 'pub/lib' to 'lib/web'");
}
public function testOldPhpLibrariesLocation()
{
$libLocation = self::$root . '/lib';
$permittedEntries = [
self::$root . '/lib/web',
self::$root . '/lib/internal',
self::$root . '/.htaccess',
];
$entries = glob("{$libLocation}/*");
$excessiveEntries = [];
foreach ($entries as $entry) {
$entry = str_replace('\\', '/', $entry);
$permitted = false;
foreach ($permittedEntries as $permittedEntry) {
if ($permittedEntry == $entry) {
$permitted = true;
break;
}
}
if (!$permitted) {
$excessiveEntries[] = $entry;
}
}
$this->assertEmpty(
$excessiveEntries,
"All files and directories have been moved from 'lib' to 'lib/internal'"
);
}
}