Merge pull request #79 from haskell-servant/shahn/wip-fix-test-all-script

fix doctests for cabal-install-1.18
This commit is contained in:
Christian Marie 2015-05-14 23:16:10 +10:00
commit b5e558f783
4 changed files with 28 additions and 2 deletions

View File

@ -113,6 +113,8 @@ test-suite doctests
, servant
, doctest
, filemanip
, directory
, filepath
type: exitcode-stdio-1.0
main-is: test/Doctests.hs
buildable: True

View File

@ -1,14 +1,18 @@
module Main where
import Data.List (isPrefixOf)
import System.Directory
import System.FilePath
import System.FilePath.Find
import Test.DocTest
main :: IO ()
main = do
files <- find always (extension ==? ".hs") "src"
cabalMacrosFile <- getCabalMacrosFile
doctest $ [ "-isrc"
, "-optP-include"
, "-optPdist/build/autogen/cabal_macros.h"
, "-optP" ++ cabalMacrosFile
, "-XOverloadedStrings"
, "-XFlexibleInstances"
, "-XMultiParamTypeClasses"
@ -16,3 +20,10 @@ main = do
, "-XTypeOperators"
] ++ files
getCabalMacrosFile :: IO FilePath
getCabalMacrosFile = do
contents <- getDirectoryContents "dist"
let rest = "build" </> "autogen" </> "cabal_macros.h"
return $ case filter ("dist-sandbox-" `isPrefixOf`) contents of
[x] -> "dist" </> x </> rest
[] -> "dist" </> rest

View File

@ -107,6 +107,8 @@ test-suite doctests
, servant
, doctest
, filemanip
, directory
, filepath
type: exitcode-stdio-1.0
main-is: test/Doctests.hs
buildable: True

View File

@ -1,16 +1,27 @@
module Main where
import Data.List (isPrefixOf)
import System.Directory
import System.FilePath
import System.FilePath.Find
import Test.DocTest
main :: IO ()
main = do
files <- find always (extension ==? ".hs") "src"
cabalMacrosFile <- getCabalMacrosFile
doctest $ [ "-isrc"
, "-optP-include"
, "-optPdist/build/autogen/cabal_macros.h"
, "-optP" ++ cabalMacrosFile
, "-XOverloadedStrings"
, "-XFlexibleInstances"
, "-XMultiParamTypeClasses"
] ++ files
getCabalMacrosFile :: IO FilePath
getCabalMacrosFile = do
contents <- getDirectoryContents "dist"
let rest = "build" </> "autogen" </> "cabal_macros.h"
return $ case filter ("dist-sandbox-" `isPrefixOf`) contents of
[x] -> "dist" </> x </> rest
[] -> "dist" </> rest