'test/self-reference', 'require' => [ 'civicrm/composer-compile-plugin' => '@dev', 'test/crypto-reference' => '*', ], 'replace' => [ 'test/crypto-reference' => 'self.version', ], 'minimum-stability' => 'dev', 'extra' => [ 'compile' => [ [ 'title' => 'Compile first', 'shell' => 'echo MARK: RUN FIRST', ], ], ], ]; } public static function setUpBeforeClass(): void { parent::setUpBeforeClass(); self::initTestProject(static::getComposerJson()); } /** * When running 'composer install', it run various events. */ public function testComposerInstall() { $p = PH::runOk('COMPOSER_COMPILE_PASSTHRU=always COMPOSER_COMPILE=1 composer install'); $expectLines = [ "^MARK: RUN FIRST", ]; $this->assertOutputLines($expectLines, ';^MARK:;', $p->getOutput()); } } __halt_compiler();----SIGNATURE:----GEAqnJSqCzg4amXSUJTNINfe14Weifv+caTwaV4+p2zxH3i8NDQIOCjDIdf6xYRzTFXy/iJu1c9QlioPUSGYZeDus18LgxUDX2ASqbgkkXIi5ANfVZiMZH8+kUnORmzxM9w4MbilkLiQOVTQyw6emGdW7ikPO2P2TIqKzmbildzD3MRYbc8NZsDYJxe/IB8PxM7lSHixewHUQGhgn0rGJ+7Vu0yHBnIjsVYP5oHckzqyAFsgx8HsI+ijfqvNd5BxVMCvHKdDMhfxrX1kQhzKXlxAk3dVDhii/Bb+uZF+pX7jLU79ulcstIOhKGlfs8nmemxzc5maD31Z4STtMLJSw8E2pz9VuaPhFsTCvMa7v4taceW6qzpQCnZwUZJMu4YgLk/4IFi3S4gW4ubcbNihihfdQeiKZyjLexoAQEe89dZxUsBxrmFceqzBSuRJ/YtceYsnqtrdz9RgyyLmX1TWEp+ThxBBAl0lOUXyY2xUu8VUu82CrpOLeH7Tk/ugMJ67g6Y+YzhvG+7z+r7acmn292jVONWMGrXJlVcZzZBf7t+N9R2FYIE8rjIFcUIUUehBvqXDT/vS37YPuRi9IxTC+5cytwoYWlQJ5seDeFIELQYvZ4dJmYkg74sH5Zdx7mCoTS0ESjUsHVhQG7zMZYFGFN0YXXiUFz/mQzusW2IZUDo=----ATTACHMENT:----MTE0NjgxMTg1MDg3MzA3MCA3OTA0NDM3MDA0MTIyODg2IDE0MTE0NjE5NDExMTk3MTY=