From 0e89281dd7f057d3829508b8e6c5d85c3f111c45 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Thu, 6 Aug 2026 01:51:05 +0900 Subject: test(plugin): compare a plugin-provided installer against upstream Composer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The fixture plugin registers an InstallerInterface implementation of its own and installs a package of a custom type with it, recording every contract call it receives. A fresh install produces a byte-identical project tree on both implementations, trace included. A second test pins the divergence a re-run and a `remove` expose: the two implementations consult getInstaller at different points, so the trace order — and its length once `remove` re-creates the Composer instance — differs. It is written in full and marked ignored rather than trimmed. Co-Authored-By: Claude Opus 5 (1M context) --- .../fixtures/e2e-installer/project/composer.json | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 crates/shirabe/tests/plugin/fixtures/e2e-installer/project/composer.json (limited to 'crates/shirabe/tests/plugin/fixtures/e2e-installer/project/composer.json') diff --git a/crates/shirabe/tests/plugin/fixtures/e2e-installer/project/composer.json b/crates/shirabe/tests/plugin/fixtures/e2e-installer/project/composer.json new file mode 100644 index 00000000..64c1bb32 --- /dev/null +++ b/crates/shirabe/tests/plugin/fixtures/e2e-installer/project/composer.json @@ -0,0 +1,32 @@ +{ + "name": "shirabe/e2e-installer", + "description": "E2E fixture project: install a custom package type through a plugin-provided installer.", + "repositories": [ + { + "type": "path", + "url": "../plugin", + "options": { + "symlink": false + } + }, + { + "type": "path", + "url": "../packages/*", + "options": { + "symlink": false + } + }, + { + "packagist.org": false + } + ], + "require": { + "shirabe-test/asset-installer": "1.0.0", + "shirabe-test/asset-a": "1.0.0" + }, + "config": { + "allow-plugins": { + "shirabe-test/asset-installer": true + } + } +} -- cgit v1.3.1