diff --git a/package_manager/tests/fixtures/fake_site/vendor/composer/installed.json b/package_manager/tests/fixtures/fake_site/vendor/composer/installed.json index db52c02689e3a14b87ea68804a0a80d9aac9fd47..59e05ee10a77036c1c989b0a55582f8510061aca 100644 --- a/package_manager/tests/fixtures/fake_site/vendor/composer/installed.json +++ b/package_manager/tests/fixtures/fake_site/vendor/composer/installed.json @@ -3,6 +3,7 @@ { "name": "drupal/core", "version": "9.8.0", + "type": "drupal-core", "extra": { "drupal-scaffold": { "file-mapping": { @@ -14,11 +15,13 @@ }, { "name": "drupal/core-recommended", - "version": "9.8.0" + "version": "9.8.0", + "type": "drupal-core" }, { "name": "drupal/core-dev", - "version": "9.8.0" + "version": "9.8.0", + "type": "drupal-core" } ], "dev-package-names": [] diff --git a/package_manager/tests/fixtures/fake_site/vendor/composer/installed.php b/package_manager/tests/fixtures/fake_site/vendor/composer/installed.php index e1e78adc66420f100aea5d1dff84dafa42770ab3..df344779370abcc7412aaa71a5edf04c9c46ffc2 100644 --- a/package_manager/tests/fixtures/fake_site/vendor/composer/installed.php +++ b/package_manager/tests/fixtures/fake_site/vendor/composer/installed.php @@ -9,6 +9,7 @@ return [ 'versions' => [ 'drupal/core' => [ 'name' => 'drupal/core', + 'type' => 'drupal-core', ], ], ]; diff --git a/package_manager/tests/src/Kernel/FakeSiteFixtureTest.php b/package_manager/tests/src/Kernel/FakeSiteFixtureTest.php index b04ee4b83f6dd3b30ba9fb2568a8cf25dbb935f0..e8a2dd6921c7cb63484bad2100e5ac5cf6c9bb0b 100644 --- a/package_manager/tests/src/Kernel/FakeSiteFixtureTest.php +++ b/package_manager/tests/src/Kernel/FakeSiteFixtureTest.php @@ -2,6 +2,8 @@ namespace Drupal\Tests\package_manager\Kernel; +use Drupal\package_manager\ComposerUtility; + /** * Test that the 'fake-site' fixture is a valid starting point. * @@ -20,4 +22,19 @@ class FakeSiteFixtureTest extends PackageManagerKernelTestBase { $this->assertStatusCheckResults([]); } + /** + * Tests calls to ComposerUtility class methods. + */ + public function testCallToComposerUtilityMethods(): void { + $active_dir = $this->container->get('package_manager.path_locator')->getProjectRoot(); + $composer_utility = ComposerUtility::createForDirectory($active_dir); + // Although the fake-site fixture does not contain any Composer packages or + // Drupal projects that would be returned from these methods calling them + // and asserting that they return NULL proves there are not any missing + // metadata in the fixture files that would cause these methods to throw an + // exception. + $this->assertNull($composer_utility->getProjectForPackage('any_random_name')); + $this->assertNull($composer_utility->getPackageForProject('drupal/any_random_name')); + } + } diff --git a/package_manager/tests/src/Kernel/FixtureUtilityTraitTest.php b/package_manager/tests/src/Kernel/FixtureUtilityTraitTest.php index f9677be07d6369c07b335bcbc576909eaa419104..fb078d62e4acf4abba2f60fd438dae0c4c9f5bfe 100644 --- a/package_manager/tests/src/Kernel/FixtureUtilityTraitTest.php +++ b/package_manager/tests/src/Kernel/FixtureUtilityTraitTest.php @@ -97,7 +97,12 @@ class FixtureUtilityTraitTest extends PackageManagerKernelTestBase { // have been prefixed with the __DIR__ constant, which should be interpreted // when installed.php is loaded by the PHP runtime. $installed_php_expected_packages['my/dev-package']['install_path'] = "$this->dir/vendor/composer/../relative/path"; - $installed_php_expected_packages = ['drupal/core' => ['name' => 'drupal/core']] + $installed_php_expected_packages; + $installed_php_expected_packages = [ + 'drupal/core' => [ + 'name' => 'drupal/core', + 'type' => 'drupal-core', + ], + ] + $installed_php_expected_packages; $this->assertSame($installed_php_expected_packages, $installed_php); } @@ -183,7 +188,12 @@ class FixtureUtilityTraitTest extends PackageManagerKernelTestBase { $this->assertContains('my/dev-package', $installed_json['dev-package-names']); $this->assertNotContains('my/other-package', $installed_json['dev-package-names']); $this->assertNotContains('my/package', $installed_json['dev-package-names']); - $installed_php_expected_packages = ['drupal/core' => ['name' => 'drupal/core']] + $installed_php_expected_packages; + $installed_php_expected_packages = [ + 'drupal/core' => [ + 'name' => 'drupal/core', + 'type' => 'drupal-core', + ], + ] + $installed_php_expected_packages; // @see ::testAddPackage() $this->assertSame($installed_php_expected_packages, $installed_php); }