diff --git a/.ddev/commands/web/unpack b/.ddev/commands/web/unpack new file mode 100755 index 0000000000000000000000000000000000000000..305bd932a61d99dc592d4e617f6664a3e47684e1 --- /dev/null +++ b/.ddev/commands/web/unpack @@ -0,0 +1,38 @@ +#!/usr/bin/env sh + +## Description: Unpacks all recipes' dependencies into the main `composer.json`. +## Usage: unpack +## Example: "ddev unpack" +## Example: "ddev unpack /path/to/project" + +# Stop this entire script if any one command fails. +set -e + +# Assume all recipes are located in the current directory. +recipes=$(find . -maxdepth 1 -type d -name 'drupal_cms*' -printf "drupal/%P\n") + +# If a path to the built code base was passed (currently used by our CI process), +# switch to it. +test -z "$1" || cd $1 + +# Configure and install the unpack plugin. +composer config allow-plugins.ewcomposer/unpack true +composer config repositories.unpack vcs https://gitlab.ewdev.ca/yonas.legesse/drupal-recipe-unpack.git +composer require --dev ewcomposer/unpack:dev-master + +# First, unpack all the dependencies. Since recipes can depend on other recipes, we +# need to do this step separately from removing the recipes. +for name in $recipes; do + composer unpack $name + echo "Unpacked $name" +done + +# Now that everything is unpacked, we can remove all the recipes from `composer.json`. +for name in $recipes; do + composer remove --quiet --no-update $name +done + +# Remove the unpacked recipes, along with the unpack plugin itself. +composer remove --minimal-changes --dev ewcomposer/unpack +composer config --unset allow-plugins.ewcomposer/unpack +composer config --unset repositories.unpack diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e2af75e929bd163a90f61a286795f46c2a9be139..c81c1cd3eba120ccc1935bc93d06b626b9fd2446 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -32,9 +32,19 @@ build project: - composer config --global repositories.template path $CI_PROJECT_DIR/project_template # Create the project. - composer create-project drupal/drupal-cms-project $_PROJECT_ROOT --stability=dev + after_script: + # Turn the built project into an archive that can be downloaded by the public + # to spin up projects with Drupal CMS. For now, this means that the recipes and + # installer need to NOT be managed by Composer at all. We can remove this kludge + # when all of our components are available on Packagist. + - .ddev/commands/web/unpack $_PROJECT_ROOT + - cd $_PROJECT_ROOT/$_WEB_ROOT + - mkdir -p ./profiles/contrib && mv $CI_PROJECT_DIR/drupal_cms_installer ./profiles/contrib + - mkdir recipes && mv $CI_PROJECT_DIR/drupal_cms* recipes + - composer archive --format=zip --file=drupal-cms --dir=$CI_PROJECT_DIR --working-dir=$_PROJECT_ROOT artifacts: paths: - - project + - drupal-cms.zip expire_in: 1 hour rules: - when: on_success @@ -62,6 +72,8 @@ run tests: stage: test needs: - 'build project' + before_script: + - unzip -q -d $_PROJECT_ROOT drupal-cms.zip script: - service apache2 start - cd /var/www/html diff --git a/drupal_cms/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms/tests/src/Kernel/ComponentValidationTest.php index 938eb3e53625821cf29e8850d0a21893ddb1f035..82b4883f761ae3663dfe302e81f3024d8f55c260 100644 --- a/drupal_cms/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_accessibility_tools/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_accessibility_tools/tests/src/Kernel/ComponentValidationTest.php index 2d4a3e11ed823ee4a396968d2d9bcf3fd14b9086..0f6d6ddd46f07bfcd98ffcc6d407ee3ec6492185 100644 --- a/drupal_cms_accessibility_tools/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_accessibility_tools/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_accessibility_tools\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_admin_theme/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_admin_theme/tests/src/Kernel/ComponentValidationTest.php index 47e613ba5f5ad4a7fa5ade1d092d3e057e9ef88a..546956e17f6e27fa917a6c640ce257cbfc9569b8 100644 --- a/drupal_cms_admin_theme/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_admin_theme/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_admin_theme\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_anti_spam/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_anti_spam/tests/src/Kernel/ComponentValidationTest.php index a70ced1f6bf0716ab3454dc1a2e5901e090a19ac..670c5df143b995c5b87031abed787d8f9dc19bed 100644 --- a/drupal_cms_anti_spam/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_anti_spam/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_anti_spam\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_basic_html_editor/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_basic_html_editor/tests/src/Kernel/ComponentValidationTest.php index a75746176437bfc4ac1f2dc9b7b662b1016ca90e..f99871dadaa4a3af1a0434e7d36437189bea653f 100644 --- a/drupal_cms_basic_html_editor/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_basic_html_editor/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_basic_html_editor\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_blog/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_blog/tests/src/Kernel/ComponentValidationTest.php index 775c394a14bbf828753adb22e7ca0fef76091ef4..a332fc4a8f01532b78b978d034b8731e265c48db 100644 --- a/drupal_cms_blog/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_blog/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_blog\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_content_type_base/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_content_type_base/tests/src/Kernel/ComponentValidationTest.php index fdc4ca431f92928062fcdca686a1390490912edf..cf2d0dcf8927fc7af95ca2f6dfece9b3a3418cb7 100644 --- a/drupal_cms_content_type_base/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_content_type_base/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_content_type_base\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_dashboard/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_dashboard/tests/src/Kernel/ComponentValidationTest.php index 29724bce97873dda41ca6fba7e58d552358e6481..c9a9d1abf2c1bc3c0428737871e198f487ab4869 100644 --- a/drupal_cms_dashboard/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_dashboard/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_dashboard\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_events/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_events/tests/src/Kernel/ComponentValidationTest.php index c878de30725c0a7f4e4af76f7430dd5da76568cf..27aba62044c714648dff83c4d0a22cfa63116dd6 100644 --- a/drupal_cms_events/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_events/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_events\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_forms/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_forms/tests/src/Kernel/ComponentValidationTest.php index e5c3112a2eb8973df94ec9e9e86d5519029c6e0e..0d8c17554523956ed6c05e2b870a85d3be3f3eb3 100644 --- a/drupal_cms_forms/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_forms/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_forms\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_full_html_editor/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_full_html_editor/tests/src/Kernel/ComponentValidationTest.php index 9fff45a0a2969b4041508b329f92d5738520ce88..0d58f19d3d56aa1c8b1a896cd41d1a1913936c47 100644 --- a/drupal_cms_full_html_editor/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_full_html_editor/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_full_html_editor\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_image_media_type/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_image_media_type/tests/src/Kernel/ComponentValidationTest.php index f7f08ce5366a449bba7a80f972ade9dab4373188..f6a03f7b9fb36002c4cee8fb8712557d6e21ae1e 100644 --- a/drupal_cms_image_media_type/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_image_media_type/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_image_media_type\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_installer/composer.json b/drupal_cms_installer/composer.json index 0070e01808f23494cdcabb1db86069352d4c940f..9fc5bcde0c37d11c74c0515058b0e4f4976d6a67 100644 --- a/drupal_cms_installer/composer.json +++ b/drupal_cms_installer/composer.json @@ -5,10 +5,5 @@ "version": "dev-main", "require": { "drupal/core": ">=10.3" - }, - "autoload": { - "psr-4": { - "Drupal\\drupal_cms_installer\\": "src" - } } } diff --git a/drupal_cms_installer/drupal_cms_installer.profile b/drupal_cms_installer/drupal_cms_installer.profile index a8411a151af61d6e4a216a0974223ea7c928a46e..cd1a4f7c917d32240bd2cb12b9677507849da7e9 100644 --- a/drupal_cms_installer/drupal_cms_installer.profile +++ b/drupal_cms_installer/drupal_cms_installer.profile @@ -16,6 +16,11 @@ use Drupal\drupal_cms_installer\Form\SiteNameForm; * Implements hook_install_tasks(). */ function drupal_cms_installer_install_tasks(): array { + // Ensure our forms are loadable in all situations, even if the installer is + // not a Composer-managed package. + \Drupal::service('class_loader') + ->addPsr4('Drupal\\drupal_cms_installer\\', __DIR__ . '/src'); + return [ 'drupal_cms_installer_prepare_trial' => [ 'run' => getenv('DRUPAL_CMS_TRIAL') ? INSTALL_TASK_RUN_IF_REACHED : INSTALL_TASK_SKIP, diff --git a/drupal_cms_locations/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_locations/tests/src/Kernel/ComponentValidationTest.php index c4253f87b7fd42b7ba0974eb1ea4769f60a06e8a..9633eecd96c5b2eaf4ae459ebd8418e20c7c7393 100644 --- a/drupal_cms_locations/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_locations/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_locations\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_maintenance/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_maintenance/tests/src/Kernel/ComponentValidationTest.php index 7cb944f7ab5e545acaf48d416da34df79ce38d21..fb1915fd2524368f4ebce64575de287bd92d6293 100644 --- a/drupal_cms_maintenance/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_maintenance/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_maintenance\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_media_tools/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_media_tools/tests/src/Kernel/ComponentValidationTest.php index 16a6276288bfe59e3c8307b60901b10dc517f5cf..aab125c2c6982e3957d7eab3c793c71709644b9e 100644 --- a/drupal_cms_media_tools/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_media_tools/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_media_tools\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_multilingual/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_multilingual/tests/src/Kernel/ComponentValidationTest.php index 3258b6460fbdff541f7f8947a52a92e5886abb3a..48c132339483a9b1d2e8f8d0947b1ce77798d292 100644 --- a/drupal_cms_multilingual/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_multilingual/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_multilingual\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_page_content_type/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_page_content_type/tests/src/Kernel/ComponentValidationTest.php index b40e5e273f624e77083eacf506148220399b49bd..46596b469a593c6a533c6f084d25759d820519e4 100644 --- a/drupal_cms_page_content_type/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_page_content_type/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_page_content_type\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_seo_advanced/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_seo_advanced/tests/src/Kernel/ComponentValidationTest.php index 7c484878cd070431fa00754305556fc907a0cf97..b545b499d48501edb12ee201daa82f4285b3e8aa 100644 --- a/drupal_cms_seo_advanced/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_seo_advanced/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_seo_advanced\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_seo_basic/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_seo_basic/tests/src/Kernel/ComponentValidationTest.php index 4bc68202e0e51895fa0d48b3644ff9416de06632..e17665010b13e9a2b77597e4edd9faa1ac4af0e0 100644 --- a/drupal_cms_seo_basic/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_seo_basic/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_seo_basic\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir); diff --git a/drupal_cms_workflows/tests/src/Kernel/ComponentValidationTest.php b/drupal_cms_workflows/tests/src/Kernel/ComponentValidationTest.php index 762df30bc6e30807b5e6188bfcbd44258b1b23e8..ad0a4117f9af0ea3b37cb54fda67379f601cc696 100644 --- a/drupal_cms_workflows/tests/src/Kernel/ComponentValidationTest.php +++ b/drupal_cms_workflows/tests/src/Kernel/ComponentValidationTest.php @@ -4,7 +4,6 @@ declare(strict_types=1); namespace Drupal\Tests\drupal_cms_workflows\Kernel; -use Composer\InstalledVersions; use Drupal\Core\Extension\ThemeInstallerInterface; use Drupal\Core\Recipe\Recipe; use Drupal\Core\Recipe\RecipeRunner; @@ -47,7 +46,7 @@ class ComponentValidationTest extends KernelTestBase { } public function test(): void { - $dir = InstalledVersions::getInstallPath('drupal/' . explode('\\', __NAMESPACE__)[2]); + $dir = realpath(__DIR__ . '/../../..'); // If the recipe is not valid, an exception should be thrown here. $recipe = Recipe::createFromDirectory($dir);