diff options
Diffstat (limited to 'testsuite')
-rw-r--r-- | testsuite/tests/cabal/Makefile | 16 | ||||
-rw-r--r-- | testsuite/tests/cabal/shadow.stderr | 8 | ||||
-rw-r--r-- | testsuite/tests/cabal/shadow.stdout | 2 |
3 files changed, 14 insertions, 12 deletions
diff --git a/testsuite/tests/cabal/Makefile b/testsuite/tests/cabal/Makefile index 635a94b0ea..cbf8cbb7ed 100644 --- a/testsuite/tests/cabal/Makefile +++ b/testsuite/tests/cabal/Makefile @@ -156,19 +156,21 @@ shadow: @echo "databases 1 and 3:" $(LOCAL_GHC_PKGSHADOW13) list echo "main = return ()" >shadow.hs -# -# In this test, shadow-1-XXX with ABI hash aaa conflicts with shadow-1-XXX with -# ABI hash bbb, so GHC errors +# +# In this test, the later database defines a new shadow-1-XXX which +# shadows the old one, making shadowdep unsatisfiable. # @echo "should FAIL:" if '$(TEST_HC)' $(TEST_HC_OPTS) -package-db $(PKGCONFSHADOW1) -package-db $(PKGCONFSHADOW2) -package shadowdep -c shadow.hs -fno-code; then false; else true; fi # -# Reversing the orders of the configs does not fix the problem +# Reversing the orders of the configs fixes the problem, because now +# the shadow-1-XXX defined in the same DB as shadowdep shadows +# shadow-1-XXX in localshadow2.package.conf # - @echo "should FAIL:" - if '$(TEST_HC)' $(TEST_HC_OPTS) -package-db $(PKGCONFSHADOW2) -package-db $(PKGCONFSHADOW1) -package shadowdep -c shadow.hs -fno-code; then false; else true; fi + @echo "should SUCCEED:" + '$(TEST_HC)' $(TEST_HC_OPTS) -package-db $(PKGCONFSHADOW2) -package-db $(PKGCONFSHADOW1) -package shadowdep -c shadow.hs -fno-code # -# When the ABIs are the same, there is no problem +# When the ABIs are the same, dependencies don't break, we just swap it in # @echo "should SUCCEED:" '$(TEST_HC)' $(TEST_HC_OPTS) -package-db $(PKGCONFSHADOW3) -package-db $(PKGCONFSHADOW1) -package shadowdep -c shadow.hs -fno-code diff --git a/testsuite/tests/cabal/shadow.stderr b/testsuite/tests/cabal/shadow.stderr index 3825896e85..601e33714f 100644 --- a/testsuite/tests/cabal/shadow.stderr +++ b/testsuite/tests/cabal/shadow.stderr @@ -1,4 +1,4 @@ -<command line>: package db: duplicate packages with incompatible ABIs: - shadow-1-XXX has ABIs: aaa, bbb -<command line>: package db: duplicate packages with incompatible ABIs: - shadow-1-XXX has ABIs: aaa, bbb +<command line>: cannot satisfy -package shadowdep: + shadowdep-1-XXX is unusable due to shadowed dependencies: + shadow-1-XXX + (use -v for more information) diff --git a/testsuite/tests/cabal/shadow.stdout b/testsuite/tests/cabal/shadow.stdout index f4b783aa7d..bdd2459f73 100644 --- a/testsuite/tests/cabal/shadow.stdout +++ b/testsuite/tests/cabal/shadow.stdout @@ -15,5 +15,5 @@ localshadow3.package.conf: (shadow-1) should FAIL: -should FAIL: +should SUCCEED: should SUCCEED: |