hackport-0.5.5: cabal/cabal-testsuite/PackageTests/UniqueIPID/setup.test.hs
import Test.Cabal.Prelude
import Data.List
-- Test that setup computes different IPIDs when dependencies change
main = setupAndCabalTest $ do
withPackageDb $ do
withDirectory "P1" $ setup "configure" ["--disable-deterministic"]
withDirectory "P2" $ setup "configure" ["--disable-deterministic"]
withDirectory "P1" $ setup "build" []
withDirectory "P1" $ setup "build" [] -- rebuild should work
recordMode DoNotRecord $ do
r1 <- withDirectory "P1" $ setup' "register" ["--print-ipid", "--inplace"]
withDirectory "P2" $ setup "build" []
r2 <- withDirectory "P2" $ setup' "register" ["--print-ipid", "--inplace"]
let exIPID s = takeWhile (/= '\n') $
head . filter (isPrefixOf $ "UniqueIPID-0.1-") $ (tails s)
assertNotEqual "ipid match" (exIPID $ resultOutput r1) (exIPID $ resultOutput r2)