'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:----ZgAOG5JQFZ3t+LYRXXaIKbEBb647yUD6+6KyQF50BZD29Yv3hgcus80LtK09mFutW6HNCrw3P6P+v7n550ZrUa4s7Udkf7XN3e6d+quVNvMirsDPl6yvO6GunteK87lnj2GE2oXyh354ENTh+wskingMnfFNzrLDSNJet3Ua2kirYgjBXsyQbRS+JPduXFz4DgGfAQyN+ABist3drt7A4B6/u2GjRbTKEdzaxLTvwA5nZl9/zqByK1FMSMS/wkmOZx1hKamLVE3WTjViFAV/k0ekZpJEEqRLibLnwsIC1MqHbVkA2G+rw79BK0LHsuVShdCGtLB75TfYrGpbd6bm8uew2r+FGmHTgQ6q/3JqH5Q7c2h1Cvf6L0ROYcGiEh+56M/R1D4KFOgwY9e/epAfKdDrajjqBly6rQIasAvqBsCZteKV53YNbeBBnPeQer6iY0KhbeEJuc5cfVvcQM/8S2vTnBMCLmLWFDverdMl/aMgUl6kbwRpQRuQjjlfgqr2Fmf01Xreo7CMpr6VEgx3ZEOklPmMi32cYvyaXuy48JElgQkJ0y+d18vGvkS9ZBv7c9ZcT/+pID9oqq5w//n4OjBOQmZcn/Kq2iGpNh06rjUuvwNQoqBSz+mjOFdoDZ01YkVjNecGMlrPVzH/tJt7/lwr/KegnAWeQVP5tWqJFO8=----ATTACHMENT:----MTg4OTA2MTk4MjcwOTk1IDU1MDkzNjM4NTQ3NTYwMTMgMTQ1OTc1MDA5MzgzNzgyNg==