Browse Source

Merge remote-tracking branch 'bestform/replaced-packages-should-not-be-installed-in-a-different-version'

Jordi Boggiano 10 years ago
parent
commit
df23836a0e

+ 39 - 0
tests/Composer/Test/Fixtures/installer/replaced-packages-should-not-be-installed-when-installing-from-lock.test

@@ -0,0 +1,39 @@
+--TEST--
+Requiring a replaced package in a version, that is not provided by the replacing package, should result in a conflict, when installing from lock
+--COMPOSER--
+{
+    "repositories": [
+        {
+            "type": "package",
+            "package": [
+                { "name": "foo/original", "version": "1.0.0", "replace": {"foo/replaced": "1.0.0"} },
+                { "name": "foo/replaced", "version": "1.0.0" },
+                { "name": "foo/replaced", "version": "2.0.0" }
+            ]
+        }
+    ],
+    "require": {
+        "foo/original": "1.0.0",
+        "foo/replaced": "2.0.0"
+    }
+}
+--LOCK--
+{
+    "packages": [
+        { "name": "foo/original", "version": "1.0.0", "replace": {"foo/replaced": "1.0.0"} },
+        { "name": "foo/replaced", "version": "2.0.0" }
+    ],
+    "packages-dev": [],
+    "aliases": [],
+    "minimum-stability": "stable",
+    "stability-flags": {},
+    "prefer-stable": false,
+    "prefer-lowest": false,
+    "platform": [],
+    "platform-dev": []
+}
+--RUN--
+install
+--EXPECT-EXIT-CODE--
+2
+--EXPECT--

+ 24 - 0
tests/Composer/Test/Fixtures/installer/replaced-packages-should-not-be-installed.test

@@ -0,0 +1,24 @@
+--TEST--
+Requiring a replaced package in a version, that is not provided by the replacing package, should result in a conflict
+--COMPOSER--
+{
+    "repositories": [
+        {
+            "type": "package",
+            "package": [
+                { "name": "foo/original", "version": "1.0.0", "replace": {"foo/replaced": "1.0.0"} },
+                { "name": "foo/replaced", "version": "1.0.0" },
+                { "name": "foo/replaced", "version": "2.0.0" }
+            ]
+        }
+    ],
+    "require": {
+        "foo/original": "1.0.0",
+        "foo/replaced": "2.0.0"
+    }
+}
+--RUN--
+install
+--EXPECT-EXIT-CODE--
+2
+--EXPECT--