From dadb89dcdaee8d3e662c665afdee1a05551a6602 Mon Sep 17 00:00:00 2001 From: "Edward Z. Yang" <ezyang@cs.stanford.edu> Date: Fri, 25 Nov 2016 22:41:43 -0500 Subject: [PATCH] Port exec/adds_sandbox_bin_directory_to_path to new test suite Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu> --- .../exec/adds_sandbox_bin_directory_to_path.out | 1 - .../exec/adds_sandbox_bin_directory_to_path.sh | 10 ---------- cabal-testsuite/PackageTests/Exec/Foo.hs | 4 ++++ cabal-testsuite/PackageTests/Exec/My.hs | 5 +++++ cabal-testsuite/PackageTests/Exec/my.cabal | 14 ++++++++++++++ .../PackageTests/Exec/sandbox-path.test.hs | 8 ++++++++ 6 files changed, 31 insertions(+), 11 deletions(-) delete mode 100644 cabal-install/tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.out delete mode 100644 cabal-install/tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.sh create mode 100644 cabal-testsuite/PackageTests/Exec/Foo.hs create mode 100644 cabal-testsuite/PackageTests/Exec/My.hs create mode 100644 cabal-testsuite/PackageTests/Exec/my.cabal create mode 100644 cabal-testsuite/PackageTests/Exec/sandbox-path.test.hs diff --git a/cabal-install/tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.out b/cabal-install/tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.out deleted file mode 100644 index 27df3614e9..0000000000 --- a/cabal-install/tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.out +++ /dev/null @@ -1 +0,0 @@ -This is my-executable diff --git a/cabal-install/tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.sh b/cabal-install/tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.sh deleted file mode 100644 index cc344c69ae..0000000000 --- a/cabal-install/tests/IntegrationTests/exec/adds_sandbox_bin_directory_to_path.sh +++ /dev/null @@ -1,10 +0,0 @@ -. ./common.sh - -cabal sandbox delete > /dev/null -cabal exec my-executable && die "Unexpectedly found executable" - -cabal sandbox init > /dev/null -cabal install > /dev/null - -# Execute indirectly via bash to ensure that we go through $PATH -cabal exec sh -- -c my-executable || die "Did not find executable" diff --git a/cabal-testsuite/PackageTests/Exec/Foo.hs b/cabal-testsuite/PackageTests/Exec/Foo.hs new file mode 100644 index 0000000000..5924b011a0 --- /dev/null +++ b/cabal-testsuite/PackageTests/Exec/Foo.hs @@ -0,0 +1,4 @@ +module Foo where + +foo :: String +foo = "foo" diff --git a/cabal-testsuite/PackageTests/Exec/My.hs b/cabal-testsuite/PackageTests/Exec/My.hs new file mode 100644 index 0000000000..b467ba86e0 --- /dev/null +++ b/cabal-testsuite/PackageTests/Exec/My.hs @@ -0,0 +1,5 @@ +module Main where + +main :: IO () +main = do + putStrLn "This is my-executable" diff --git a/cabal-testsuite/PackageTests/Exec/my.cabal b/cabal-testsuite/PackageTests/Exec/my.cabal new file mode 100644 index 0000000000..797a2c7d4f --- /dev/null +++ b/cabal-testsuite/PackageTests/Exec/my.cabal @@ -0,0 +1,14 @@ +name: my +version: 0.1 +license: BSD3 +cabal-version: >= 1.2 +build-type: Simple + +library + exposed-modules: Foo + build-depends: base + + +executable my-executable + main-is: My.hs + build-depends: base diff --git a/cabal-testsuite/PackageTests/Exec/sandbox-path.test.hs b/cabal-testsuite/PackageTests/Exec/sandbox-path.test.hs new file mode 100644 index 0000000000..ab4b666c6f --- /dev/null +++ b/cabal-testsuite/PackageTests/Exec/sandbox-path.test.hs @@ -0,0 +1,8 @@ +import Test.Cabal.Prelude +main = cabalTest $ do + withSandbox $ do + fails $ cabal "exec" ["my-executable"] + cabal "install" [] + -- Execute indirectly via bash to ensure that we go through $PATH + cabal' "exec" ["sh", "--", "-c", "my-executable"] + >>= assertOutputContains "This is my-executable" -- GitLab