From 9a5d54610c9cc2a60deafba48d6c441f09feb342 Mon Sep 17 00:00:00 2001 From: phenaproxima <phenaproxima@205645.no-reply.drupal.org> Date: Wed, 2 Mar 2022 17:43:09 +0000 Subject: [PATCH] Issue #3267389 by tedbow, phenaproxima: Disable ComposerExecutableValidator during functional tests --- .../src/Functional/AutomaticUpdatesFunctionalTestBase.php | 8 ++++++++ tests/src/Functional/ReadinessValidationTest.php | 6 +++--- tests/src/Functional/UpdateLockTest.php | 1 - tests/src/Functional/UpdaterFormTest.php | 1 - 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php b/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php index acefb94b18..334ed3bb20 100644 --- a/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php +++ b/tests/src/Functional/AutomaticUpdatesFunctionalTestBase.php @@ -15,6 +15,7 @@ abstract class AutomaticUpdatesFunctionalTestBase extends BrowserTestBase { */ protected static $modules = [ 'automatic_updates_test_disable_validators', + 'package_manager_bypass', 'update', 'update_test', ]; @@ -32,6 +33,13 @@ abstract class AutomaticUpdatesFunctionalTestBase extends BrowserTestBase { // @see \Drupal\Tests\automatic_updates\Build\CoreUpdateTest::assertReadOnlyFileSystemError() 'automatic_updates.validator.file_system_permissions', 'package_manager.validator.file_system', + // Disable the Composer executable validator, since it may cause the tests + // to fail if a supported version of Composer is unavailable to the web + // server. This should be okay in most situations because, apart from the + // validator, only Composer Stager needs run Composer, and + // package_manager_bypass is disabling those operations. + 'automatic_updates.composer_executable_validator', + 'package_manager.validator.composer_executable', ]; /** diff --git a/tests/src/Functional/ReadinessValidationTest.php b/tests/src/Functional/ReadinessValidationTest.php index 072429fd49..ec4253ee71 100644 --- a/tests/src/Functional/ReadinessValidationTest.php +++ b/tests/src/Functional/ReadinessValidationTest.php @@ -398,11 +398,11 @@ class ReadinessValidationTest extends AutomaticUpdatesFunctionalTestBase { $this->container->get('module_installer')->install([ 'automatic_updates', 'automatic_updates_test', - 'package_manager_bypass', ]); // Because all actual staging operations are bypassed by - // package_manager_bypass, disable this validator because it will complain - // if there's no actual Composer data to inspect. + // package_manager_bypass (enabled by the parent class), disable this + // validator because it will complain if there's no actual Composer data to + // inspect. $this->disableValidators(['automatic_updates.staged_projects_validator']); // The error should be persistently visible, even after the checker stops diff --git a/tests/src/Functional/UpdateLockTest.php b/tests/src/Functional/UpdateLockTest.php index 1f8a13d25d..ea3e1cc8e4 100644 --- a/tests/src/Functional/UpdateLockTest.php +++ b/tests/src/Functional/UpdateLockTest.php @@ -20,7 +20,6 @@ class UpdateLockTest extends AutomaticUpdatesFunctionalTestBase { protected static $modules = [ 'automatic_updates', 'automatic_updates_test', - 'package_manager_bypass', ]; /** diff --git a/tests/src/Functional/UpdaterFormTest.php b/tests/src/Functional/UpdaterFormTest.php index 0b9c505055..d257fe3182 100644 --- a/tests/src/Functional/UpdaterFormTest.php +++ b/tests/src/Functional/UpdaterFormTest.php @@ -33,7 +33,6 @@ class UpdaterFormTest extends AutomaticUpdatesFunctionalTestBase { 'block', 'automatic_updates', 'automatic_updates_test', - 'package_manager_bypass', ]; /** -- GitLab