diff options
Diffstat (limited to 'third_party/bazel/rules_haskell/tests/haskell_lint')
4 files changed, 63 insertions, 0 deletions
diff --git a/third_party/bazel/rules_haskell/tests/haskell_lint/BUILD.bazel b/third_party/bazel/rules_haskell/tests/haskell_lint/BUILD.bazel new file mode 100644 index 000000000000..702dfdfe07bc --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/haskell_lint/BUILD.bazel @@ -0,0 +1,47 @@ +load( + "@io_tweag_rules_haskell//haskell:haskell.bzl", + "haskell_library", + "haskell_lint", + "haskell_test", +) + +package(default_testonly = 1) + +haskell_library( + name = "lib-a", + srcs = ["Foo.hs"], + visibility = ["//visibility:public"], + deps = ["//tests/hackage:base"], +) + +haskell_library( + name = "lib-b", + srcs = ["Bar.hs"], + visibility = ["//visibility:public"], + deps = [ + ":lib-a", + "//tests/hackage:base", + ], +) + +haskell_lint( + name = "lint-lib-b", + visibility = ["//visibility:public"], + deps = [":lib-b"], +) + +haskell_test( + name = "bin", + srcs = ["Main.hs"], + visibility = ["//visibility:public"], + deps = [ + ":lib-a", + "//tests/hackage:base", + ], +) + +haskell_lint( + name = "lint-bin", + visibility = ["//visibility:public"], + deps = [":bin"], +) diff --git a/third_party/bazel/rules_haskell/tests/haskell_lint/Bar.hs b/third_party/bazel/rules_haskell/tests/haskell_lint/Bar.hs new file mode 100644 index 000000000000..18e9583e5ad6 --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/haskell_lint/Bar.hs @@ -0,0 +1,6 @@ +module Bar (bar) where + +import Foo (foo) + +bar :: Int +bar = 4 + foo :: Int diff --git a/third_party/bazel/rules_haskell/tests/haskell_lint/Foo.hs b/third_party/bazel/rules_haskell/tests/haskell_lint/Foo.hs new file mode 100644 index 000000000000..119192e6b12b --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/haskell_lint/Foo.hs @@ -0,0 +1,4 @@ +module Foo (foo) where + +foo :: Int +foo = 5 :: Int diff --git a/third_party/bazel/rules_haskell/tests/haskell_lint/Main.hs b/third_party/bazel/rules_haskell/tests/haskell_lint/Main.hs new file mode 100644 index 000000000000..1bc6f8abc905 --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/haskell_lint/Main.hs @@ -0,0 +1,6 @@ +module Main (main) where + +import Foo (foo) + +main :: IO () +main = print foo |