aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/tests/plugin/fixtures/e2e-normalize/project/composer.json
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-08-05 04:07:35 +0900
committernsfisis <nsfisis@gmail.com>2026-08-05 04:07:35 +0900
commitda602f1cb1d555c7826fa3d026df66b82061cda4 (patch)
tree32f258f8e97c6a4dbf4ed3ad4a8f144f16557310 /crates/shirabe/tests/plugin/fixtures/e2e-normalize/project/composer.json
parent3b0787fdecc21edf9ad22b82f547363c1aa79b15 (diff)
downloadphp-shirabe-da602f1cb1d555c7826fa3d026df66b82061cda4.tar.gz
php-shirabe-da602f1cb1d555c7826fa3d026df66b82061cda4.tar.zst
php-shirabe-da602f1cb1d555c7826fa3d026df66b82061cda4.zip
test(plugin): pin a composer-normalize fixture and compare its listing
The pinned plugin and its real dependency tree (nine packages, fetched by commit and verified by tree hash into the git-ignored ext/) install under both implementations, and the list/help renderings of the plugin-provided normalize command must match upstream byte for byte. The execution comparison is written but ignored: NormalizeCommand builds a second, in-process Composer instance, and the worker's proxy stubs reject native construction of the classes that path instantiates. Stale comments about the missing worker-side application are updated to the current facts. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Diffstat (limited to 'crates/shirabe/tests/plugin/fixtures/e2e-normalize/project/composer.json')
-rw-r--r--crates/shirabe/tests/plugin/fixtures/e2e-normalize/project/composer.json228
1 files changed, 228 insertions, 0 deletions
diff --git a/crates/shirabe/tests/plugin/fixtures/e2e-normalize/project/composer.json b/crates/shirabe/tests/plugin/fixtures/e2e-normalize/project/composer.json
new file mode 100644
index 00000000..9af30ddb
--- /dev/null
+++ b/crates/shirabe/tests/plugin/fixtures/e2e-normalize/project/composer.json
@@ -0,0 +1,228 @@
+{
+ "description": "E2E fixture project: install and run ergebnis/composer-normalize. The top-level keys are deliberately out of schema order so the normalize run has something to do.",
+ "require": {
+ "ergebnis/composer-normalize": "2.52.0"
+ },
+ "name": "shirabe/e2e-composer-normalize",
+ "config": {
+ "allow-plugins": {
+ "ergebnis/composer-normalize": true
+ }
+ },
+ "repositories": [
+ {
+ "type": "package",
+ "package": {
+ "name": "ergebnis/composer-normalize",
+ "version": "2.52.0",
+ "type": "composer-plugin",
+ "autoload": {
+ "psr-4": {
+ "Ergebnis\\Composer\\Normalize\\": "src/"
+ }
+ },
+ "require": {
+ "ext-json": "*",
+ "composer-plugin-api": "^2.0.0",
+ "ergebnis/json": "^1.4.0",
+ "ergebnis/json-normalizer": "^4.9.0",
+ "ergebnis/json-printer": "^3.7.0",
+ "justinrainbow/json-schema": "^5.2.12 || ^6.0.0",
+ "localheinz/diff": "^1.3.0"
+ },
+ "extra": {
+ "class": "Ergebnis\\Composer\\Normalize\\NormalizePlugin"
+ },
+ "dist": {
+ "type": "path",
+ "url": "../ext/composer-normalize-2.52.0"
+ },
+ "transport-options": {
+ "symlink": false
+ }
+ }
+ },
+ {
+ "type": "package",
+ "package": {
+ "name": "ergebnis/json",
+ "version": "1.6.0",
+ "autoload": {
+ "psr-4": {
+ "Ergebnis\\Json\\": "src/"
+ }
+ },
+ "require": {
+ "ext-json": "*"
+ },
+ "dist": {
+ "type": "path",
+ "url": "../ext/json-1.6.0"
+ },
+ "transport-options": {
+ "symlink": false
+ }
+ }
+ },
+ {
+ "type": "package",
+ "package": {
+ "name": "ergebnis/json-normalizer",
+ "version": "4.10.1",
+ "autoload": {
+ "psr-4": {
+ "Ergebnis\\Json\\Normalizer\\": "src/"
+ }
+ },
+ "require": {
+ "ext-json": "*",
+ "ergebnis/json": "^1.2.0",
+ "ergebnis/json-pointer": "^3.4.0",
+ "ergebnis/json-printer": "^3.5.0",
+ "ergebnis/json-schema-validator": "^4.2.0",
+ "justinrainbow/json-schema": "^5.2.12 || ^6.0.0"
+ },
+ "dist": {
+ "type": "path",
+ "url": "../ext/json-normalizer-4.10.1"
+ },
+ "transport-options": {
+ "symlink": false
+ }
+ }
+ },
+ {
+ "type": "package",
+ "package": {
+ "name": "ergebnis/json-pointer",
+ "version": "3.8.0",
+ "autoload": {
+ "psr-4": {
+ "Ergebnis\\Json\\Pointer\\": "src/"
+ }
+ },
+ "dist": {
+ "type": "path",
+ "url": "../ext/json-pointer-3.8.0"
+ },
+ "transport-options": {
+ "symlink": false
+ }
+ }
+ },
+ {
+ "type": "package",
+ "package": {
+ "name": "ergebnis/json-printer",
+ "version": "3.8.1",
+ "autoload": {
+ "psr-4": {
+ "Ergebnis\\Json\\Printer\\": "src/"
+ }
+ },
+ "require": {
+ "ext-json": "*",
+ "ext-mbstring": "*"
+ },
+ "dist": {
+ "type": "path",
+ "url": "../ext/json-printer-3.8.1"
+ },
+ "transport-options": {
+ "symlink": false
+ }
+ }
+ },
+ {
+ "type": "package",
+ "package": {
+ "name": "ergebnis/json-schema-validator",
+ "version": "4.5.1",
+ "autoload": {
+ "psr-4": {
+ "Ergebnis\\Json\\SchemaValidator\\": "src/"
+ }
+ },
+ "require": {
+ "ext-json": "*",
+ "ergebnis/json": "^1.2.0",
+ "ergebnis/json-pointer": "^3.4.0",
+ "justinrainbow/json-schema": "^5.2.12 || ^6.0.0"
+ },
+ "dist": {
+ "type": "path",
+ "url": "../ext/json-schema-validator-4.5.1"
+ },
+ "transport-options": {
+ "symlink": false
+ }
+ }
+ },
+ {
+ "type": "package",
+ "package": {
+ "name": "justinrainbow/json-schema",
+ "version": "6.10.0",
+ "autoload": {
+ "psr-4": {
+ "JsonSchema\\": "src/JsonSchema/"
+ }
+ },
+ "require": {
+ "marc-mabe/php-enum": "^4.4"
+ },
+ "dist": {
+ "type": "path",
+ "url": "../ext/json-schema-6.10.0"
+ },
+ "transport-options": {
+ "symlink": false
+ }
+ }
+ },
+ {
+ "type": "package",
+ "package": {
+ "name": "marc-mabe/php-enum",
+ "version": "4.7.2",
+ "autoload": {
+ "psr-4": {
+ "MabeEnum\\": "src/"
+ },
+ "classmap": [
+ "stubs/Stringable.php"
+ ]
+ },
+ "dist": {
+ "type": "path",
+ "url": "../ext/php-enum-4.7.2"
+ },
+ "transport-options": {
+ "symlink": false
+ }
+ }
+ },
+ {
+ "type": "package",
+ "package": {
+ "name": "localheinz/diff",
+ "version": "1.3.0",
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "dist": {
+ "type": "path",
+ "url": "../ext/diff-1.3.0"
+ },
+ "transport-options": {
+ "symlink": false
+ }
+ }
+ },
+ {
+ "packagist.org": false
+ }
+ ]
+}