diff --git a/tests/Composer/Test/DependencyResolver/Fixtures/poolbuilder/multi-repo-replace.test b/tests/Composer/Test/DependencyResolver/Fixtures/poolbuilder/multi-repo-replace.test new file mode 100644 index 000000000..31850dcb6 --- /dev/null +++ b/tests/Composer/Test/DependencyResolver/Fixtures/poolbuilder/multi-repo-replace.test @@ -0,0 +1,95 @@ +--TEST-- +Check that replacers from additional repositories are loaded + +--REQUEST-- +{ + "require": { + "base/package": "^1.0", + "indirect/replacer": "^1.0" + } +} + +--FIXED-- +[ +] + +--PACKAGE-REPOS-- +[ + [ + { + "name": "base/package", + "version": "1.0.0", + "require": { + "shared/dep": "^1.2" + } + }, + { + "name": "shared/dep", + "version": "1.0.0" + }, + { + "name": "shared/dep", + "version": "1.2.0" + } + ], + [ + { + "name": "base/package", + "version": "1.1.0" + }, + { + "name": "shared/dep", + "version": "1.3.0" + } + ], + { + "canonical": false, + "packages": [ + { + "name": "indirect/replacer", + "version": "1.2.0", + "require": { + "replacer/package": "^1.2" + } + }, + { + "name": "replacer/package", + "version": "1.2.0", + "require": { + "shared/dep": "^1.1" + } + }, + { + "name": "shared/dep", + "version": "1.1.0" + } + ] + }, + [ + { + "name": "replacer/package", + "version": "1.0.0", + "require": { + "shared/dep": "^1.0" + } + }, + { + "name": "indirect/replacer", + "version": "1.0.0", + "require": { + "replacer/package": "^1.0" + } + } + ] +] + +--EXPECT-- +[ + "base/package-1.0.0.0", + "indirect/replacer-1.2.0.0", + "indirect/replacer-1.0.0.0", + "shared/dep-1.2.0.0", + "replacer/package-1.2.0.0", + "replacer/package-1.0.0.0", + "shared/dep-1.0.0.0" +]