diff options
Diffstat (limited to 'crates/shirabe/tests/plugin/fixtures/e2e-script-event/project')
| -rw-r--r-- | crates/shirabe/tests/plugin/fixtures/e2e-script-event/project/composer.json | 17 | ||||
| -rw-r--r-- | crates/shirabe/tests/plugin/fixtures/e2e-script-event/project/src/ScriptEventRecorder.php | 22 |
2 files changed, 39 insertions, 0 deletions
diff --git a/crates/shirabe/tests/plugin/fixtures/e2e-script-event/project/composer.json b/crates/shirabe/tests/plugin/fixtures/e2e-script-event/project/composer.json new file mode 100644 index 00000000..59fc8f13 --- /dev/null +++ b/crates/shirabe/tests/plugin/fixtures/e2e-script-event/project/composer.json @@ -0,0 +1,17 @@ +{ + "name": "shirabe/e2e-script-event", + "description": "E2E fixture project: record what a post-autoload-dump PHP script sees on its Event.", + "repositories": [ + { + "packagist.org": false + } + ], + "autoload": { + "psr-4": { + "Shirabe\\E2e\\": "src/" + } + }, + "scripts": { + "post-autoload-dump": "Shirabe\\E2e\\ScriptEventRecorder::postAutoloadDump" + } +} diff --git a/crates/shirabe/tests/plugin/fixtures/e2e-script-event/project/src/ScriptEventRecorder.php b/crates/shirabe/tests/plugin/fixtures/e2e-script-event/project/src/ScriptEventRecorder.php new file mode 100644 index 00000000..84fa0da9 --- /dev/null +++ b/crates/shirabe/tests/plugin/fixtures/e2e-script-event/project/src/ScriptEventRecorder.php @@ -0,0 +1,22 @@ +<?php + +namespace Shirabe\E2e; + +use Composer\Script\Event; + +class ScriptEventRecorder +{ + public static function postAutoloadDump(Event $event): void + { + $composer = $event->getComposer(); + $lines = [ + 'event=' . $event->getName(), + 'dev=' . ($event->isDevMode() ? '1' : '0'), + 'root=' . $composer->getPackage()->getName(), + 'vendor-dir=' . basename($composer->getConfig()->get('vendor-dir')), + 'bin-dir=' . basename($composer->getConfig()->get('bin-dir')), + ]; + $event->getIO()->write('script-event: ' . implode(' ', $lines)); + file_put_contents(__DIR__ . '/../script-event-trace.txt', implode("\n", $lines) . "\n"); + } +} |
