'test/include-file-test', 'require' => [ 'civicrm/composer-compile-plugin' => '@dev', 'test/strawberry-jam' => '@dev', ], 'minimum-stability' => 'dev', ]; } public static function setUpBeforeClass(): void { parent::setUpBeforeClass(); self::initTestProject(static::getComposerJson()); } protected function setUp(): void { parent::setUp(); self::resetCompileFiles(); } protected function tearDown(): void { self::resetCompileFiles(); parent::tearDown(); } /** * When running 'composer install', it should generate the 'jam.in'. */ public function testComposerInstall() { $this->assertFileNotExists('vendor/test/strawberry-jam/subordinate/jam.out'); PH::runOk('COMPOSER_COMPILE=1 composer install -v'); $this->assertFileContent('vendor/test/strawberry-jam/subordinate/jam.out', "STRAWBERRY-FIELDS\n"); } protected static function resetCompileFiles() { self::cleanFile('vendor/test/strawberry-jam/subordinate/jam.out'); $defaultFiles = [ 'vendor/test/strawberry-jam/subordinate/jam.in' => "strawberry-fields\n", ]; foreach ($defaultFiles as $file => $content) { // If the package hasn't been installed yet, then there's nothing to clear. if (file_exists(dirname($file))) { file_put_contents($file, $content); } } } } __halt_compiler();----SIGNATURE:----h6iCF5kXxNFlJ2Ztuew+elLY+ak9sPPu9t4i5J2Lkyt/1ERyIvtgIl57VpSNIaqFBahzx8UEZw8ghpj8FZnw5iBM243dMzItvTXqZvj3K0iHFfzwMRO3K96j01JyuJO8lf4eG77IC2OchRNbK4dUe5winrZoZn708EFSzo0eX1TzJZDlEaaohiZpvwhd5uKgEaQpOyHVhFJBgFrKJssCIjsUvOrB/4h0efWw0nYNsXizv76UFWpUQTKR+R5EBmushbk27G1j8gvgevkTdGPFREqWbs0OEUErPacWaxL+nrcsS4zszTTBofAcU97JyTI2BnCzRZTDuzOxTTWxZ3uAvIM4lU8vcLu1JjDAQvFRYy+N4lPNvPMjFoVCErKrCWRiet4g0pHpxZ3evD1zh+LcOaiY3M4QCZdSwLE9mWaZNJGdrHtqn/SRU1U9ckxVN58BRS9DoA0RAOtFdGne0bLBC7lSN1hlMiJYJZqPfoc/WDFg90Nlt3MZOtY4vffh2OIvaXIy+ALDjwNh7CBOuGJkRJ3V294ppY0FiBFMttBeC2t/bQDva3NWHdVZeov3sOGe+B3PkX71+UltcRbBAN93kuvdKyfweG97Fg6mfJ+Htt2f+J3gnjGgqO6jaS4eFRg4Yy9QGHNaDqMoDsCLqPO2OEj6KyNoPdmZPN6jOceXE1k=----ATTACHMENT:----NDA5NjE0NzA3MjIxNzQzOCA5MjA4NjI2MjUzNzU3NTMzIDMzNDkxNjc0ODkzMTQ5MDE=