From 9d6bca06ee944c3bf056be61d075d65594963c79 Mon Sep 17 00:00:00 2001 From: John MacFarlane Date: Sun, 20 Oct 2013 12:36:26 -0700 Subject: Pass the buildDir as first argument to test suite. Allows test suite to work with cabal sandboxes. Previously we hard-coded the build directory. --- Setup.hs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'Setup.hs') diff --git a/Setup.hs b/Setup.hs index 4245df203..89d03ee7a 100644 --- a/Setup.hs +++ b/Setup.hs @@ -3,13 +3,15 @@ import Distribution.Simple import Distribution.Simple.PreProcess import Distribution.Simple.Setup - (copyDest, copyVerbosity, fromFlag, installVerbosity, BuildFlags(..)) + (copyDest, copyVerbosity, fromFlag, installVerbosity, BuildFlags(..), + TestFlags(..)) import Distribution.PackageDescription (PackageDescription(..), Executable(..)) import Distribution.Simple.LocalBuildInfo (LocalBuildInfo(..), absoluteInstallDirs) import Distribution.Verbosity ( Verbosity, silent ) -import Distribution.Simple.InstallDirs (mandir, CopyDest (NoCopyDest)) +import Distribution.Simple.InstallDirs (mandir, CopyDest (NoCopyDest), toPathTemplate) import Distribution.Simple.Utils (installOrdinaryFiles, info) +import Distribution.Simple.Test (test) import Prelude hiding (catch) import System.Process ( rawSystem ) import System.FilePath ( () ) @@ -20,6 +22,10 @@ main :: IO () main = do defaultMainWithHooks $ simpleUserHooks { postBuild = makeManPages + , testHook = \pkg lbi _ flags -> + -- pass build directory as first argument to test program + test pkg lbi flags{ testOptions = + toPathTemplate (buildDir lbi) : testOptions flags } , postCopy = \ _ flags pkg lbi -> installManpages pkg lbi (fromFlag $ copyVerbosity flags) (fromFlag $ copyDest flags) -- cgit v1.2.3