From 02c0d5bcb9f7d4191a5e069aa0b8cd4065d6c039 Mon Sep 17 00:00:00 2001 From: Anthony Poon Date: Fri, 26 Oct 2018 01:30:49 +1100 Subject: Only run stack if a stack.yaml config is found (#1752) * Only run stack if a stack.yaml config is found It is necessary to check for a stack.yaml file to distinguish between cabal-only projects or stack projects (which are also cabal projects since stack is built on top of cabal). * Test that stack is called if stack.yaml exists --- test/command_callback/stack_build_paths/stack.yaml | 0 test/command_callback/stack_ghc_paths/stack.yaml | 0 .../test_haskell_stack_build_command_callback.vader | 13 +++++++++++++ .../test_haskell_stack_ghc_command_callback.vader | 14 ++++++++++++++ 4 files changed, 27 insertions(+) create mode 100644 test/command_callback/stack_build_paths/stack.yaml create mode 100644 test/command_callback/stack_ghc_paths/stack.yaml create mode 100644 test/command_callback/test_haskell_stack_build_command_callback.vader create mode 100644 test/command_callback/test_haskell_stack_ghc_command_callback.vader (limited to 'test') diff --git a/test/command_callback/stack_build_paths/stack.yaml b/test/command_callback/stack_build_paths/stack.yaml new file mode 100644 index 00000000..e69de29b diff --git a/test/command_callback/stack_ghc_paths/stack.yaml b/test/command_callback/stack_ghc_paths/stack.yaml new file mode 100644 index 00000000..e69de29b diff --git a/test/command_callback/test_haskell_stack_build_command_callback.vader b/test/command_callback/test_haskell_stack_build_command_callback.vader new file mode 100644 index 00000000..f1e6f755 --- /dev/null +++ b/test/command_callback/test_haskell_stack_build_command_callback.vader @@ -0,0 +1,13 @@ +Before: + call ale#assert#SetUpLinterTest('haskell', 'stack_build') + +After: + call ale#assert#TearDownLinterTest() + +Execute(The linter should not be executed when there's no stack.yaml file): + AssertLinterNotExecuted + +Execute(The linter should be executed when there is a stack.yaml file): + call ale#test#SetFilename('stack_build_paths/test.hs') + + AssertLinter 'stack', 'stack build --fast' diff --git a/test/command_callback/test_haskell_stack_ghc_command_callback.vader b/test/command_callback/test_haskell_stack_ghc_command_callback.vader new file mode 100644 index 00000000..4adab583 --- /dev/null +++ b/test/command_callback/test_haskell_stack_ghc_command_callback.vader @@ -0,0 +1,14 @@ +Before: + call ale#assert#SetUpLinterTest('haskell', 'stack_ghc') + +After: + call ale#assert#TearDownLinterTest() + +Execute(The linter should not be executed when there's no stack.yaml file): + AssertLinterNotExecuted + +Execute(The linter should be executed when there is a stack.yaml file): + call ale#test#SetFilename('stack_ghc_paths/test.hs') + + AssertLinter 'stack', 'stack ghc -- -fno-code -v0 %t' + -- cgit v1.2.3