From 89647ff1d4abc4674973392cb7e08d14898e3ac9 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 11 Apr 2019 19:30:39 -0500 Subject: gnu: idris: Run tests. * gnu/packages/patches/idris-test-no-node.patch: New patch. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/idris.scm (idris)[origin]: Use it. [native-inputs]: New field. [arguments]: Remove "#:tests? #f". Add custom 'check' phase after 'install'. --- gnu/packages/patches/idris-test-no-node.patch | 61 +++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 gnu/packages/patches/idris-test-no-node.patch (limited to 'gnu/packages/patches') diff --git a/gnu/packages/patches/idris-test-no-node.patch b/gnu/packages/patches/idris-test-no-node.patch new file mode 100644 index 0000000000..c04ad41a8e --- /dev/null +++ b/gnu/packages/patches/idris-test-no-node.patch @@ -0,0 +1,61 @@ +From 6c52e1b902b869c25e2fe39cff6364143a04da61 Mon Sep 17 00:00:00 2001 +From: Niklas Larsson +Date: Tue, 11 Dec 2018 19:56:22 +0100 +Subject: [PATCH] Only check for Node when required + +--- + test/TestRun.hs | 34 ++++++++++++++++++++-------------- + 1 file changed, 20 insertions(+), 14 deletions(-) + +diff --git a/test/TestRun.hs b/test/TestRun.hs +index c7db9fdcd..4809911f3 100644 +--- a/test/TestRun.hs ++++ b/test/TestRun.hs +@@ -11,6 +11,7 @@ import Data.Proxy + import Data.Typeable + import Options.Applicative + import System.Directory ++import System.Environment + import System.Exit + import System.FilePath (()) + import System.Info +@@ -103,20 +104,25 @@ runTest path flags = do + normalise (x : xs) = x : normalise xs + normalise [] = [] + ++checkNode :: IO () ++checkNode = do ++ nodePath <- findExecutable "node" ++ nodejsPath <- findExecutable "nodejs" ++ let node = nodePath <|> nodejsPath ++ case node of ++ Nothing -> do ++ putStrLn "For running the test suite against Node, node must be installed." ++ exitFailure ++ Just _ -> return () ++ + main :: IO () + main = do +- nodePath <- findExecutable "node" +- nodejsPath <- findExecutable "nodejs" +- let node = nodePath <|> nodejsPath +- case node of +- Nothing -> do +- putStrLn "For running the test suite against Node, node must be installed." +- exitFailure +- Just _ -> do +- defaultMainWithIngredients ingredients $ ++ args <- getArgs ++ when ("--node" `elem` args) checkNode ++ defaultMainWithIngredients ingredients $ + askOption $ \(NodeOpt node) -> +- let (codegen, flags) = if node then (JS, ["--codegen", "node"]) +- else (C , []) +- in +- mkGoldenTests (testFamiliesForCodegen codegen) +- (flags ++ idrisFlags) ++ let (codegen, flags) = if node then (JS, ["--codegen", "node"]) ++ else (C , []) ++ in ++ mkGoldenTests (testFamiliesForCodegen codegen) (flags ++ idrisFlags) ++ -- cgit v1.2.3