From afcca18c9e01f80f8198918b3356995d22ecf373 Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Sat, 10 Aug 2024 13:07:18 +0100 Subject: [PATCH] drupal: make simpletest DB URL configurable --- resources/build.defaults.yaml | 3 +++ src/Command/CreateFinalConfigurationDataCommand.php | 2 +- src/DataTransferObject/ConfigDto.php | 10 +++++++++- templates/php/drupal/phpunit.xml.dist.twig | 2 +- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/resources/build.defaults.yaml b/resources/build.defaults.yaml index ffe7ae3..c5c73a5 100644 --- a/resources/build.defaults.yaml +++ b/resources/build.defaults.yaml @@ -1,5 +1,8 @@ +--- drupal: docroot: web + simpletest: + db: sqlite://localhost//dev/shm/test.sqlite experimental: runStaticAnalysisOnTests: false diff --git a/src/Command/CreateFinalConfigurationDataCommand.php b/src/Command/CreateFinalConfigurationDataCommand.php index 264da31..fee7ad1 100644 --- a/src/Command/CreateFinalConfigurationDataCommand.php +++ b/src/Command/CreateFinalConfigurationDataCommand.php @@ -31,7 +31,7 @@ final class CreateFinalConfigurationDataCommand // Flatten the new `parameters` into the main configuration. if (isset($configurationData['parameters'])) { - $configurationData = array_merge($configurationData, [...$configurationData['parameters']]); + $configurationData = array_replace_recursive($configurationData, [...$configurationData['parameters']]); } // `flake` renamed to `nix`. diff --git a/src/DataTransferObject/ConfigDto.php b/src/DataTransferObject/ConfigDto.php index 293be12..d9b1b46 100644 --- a/src/DataTransferObject/ConfigDto.php +++ b/src/DataTransferObject/ConfigDto.php @@ -105,7 +105,15 @@ final class ConfigDto #[Assert\Collection( allowExtraFields: false, - fields: ['docroot' => new Assert\Choice([null, 'web', 'docroot'])], + fields: [ + 'docroot' => new Assert\Choice([null, 'web', 'docroot']), + + 'simpletest' => new Assert\Optional( + new Assert\Collection([ + 'db' => new Assert\Optional(new Assert\Type('string')), + ]), + ), + ], )] public array $drupal; diff --git a/templates/php/drupal/phpunit.xml.dist.twig b/templates/php/drupal/phpunit.xml.dist.twig index 155926d..ae59632 100644 --- a/templates/php/drupal/phpunit.xml.dist.twig +++ b/templates/php/drupal/phpunit.xml.dist.twig @@ -17,7 +17,7 @@ - +