diff options
Diffstat (limited to 'third_party/bazel/rules_haskell/tests/library-with-sysdeps')
3 files changed, 45 insertions, 0 deletions
diff --git a/third_party/bazel/rules_haskell/tests/library-with-sysdeps/BUILD.bazel b/third_party/bazel/rules_haskell/tests/library-with-sysdeps/BUILD.bazel new file mode 100644 index 000000000000..0e34f688fd69 --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/library-with-sysdeps/BUILD.bazel @@ -0,0 +1,32 @@ +load( + "@io_tweag_rules_haskell//haskell:haskell.bzl", + "haskell_library", + "haskell_test", +) + +package(default_testonly = 1) + +haskell_library( + name = "library-with-sysdeps", + srcs = ["Lib.hs"], + tags = ["requires_zlib"], + visibility = ["//visibility:public"], + deps = [ + "//tests/hackage:base", + "@zlib", + ], +) + +haskell_test( + name = "bin", + srcs = ["Main.hs"], + expected_covered_expressions_percentage = 100, + tags = [ + "coverage-compatible", + "requires_zlib", + ], + deps = [ + ":library-with-sysdeps", + "//tests/hackage:base", + ], +) diff --git a/third_party/bazel/rules_haskell/tests/library-with-sysdeps/Lib.hs b/third_party/bazel/rules_haskell/tests/library-with-sysdeps/Lib.hs new file mode 100644 index 000000000000..771dd7faf10f --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/library-with-sysdeps/Lib.hs @@ -0,0 +1,8 @@ +module Lib (crc) where + +import Foreign.Ptr +import Foreign.C.Types + +foreign import ccall crc32 :: CLong -> Ptr () -> CInt -> IO () + +crc = crc32 0 nullPtr 0 diff --git a/third_party/bazel/rules_haskell/tests/library-with-sysdeps/Main.hs b/third_party/bazel/rules_haskell/tests/library-with-sysdeps/Main.hs new file mode 100644 index 000000000000..b892de88c4a7 --- /dev/null +++ b/third_party/bazel/rules_haskell/tests/library-with-sysdeps/Main.hs @@ -0,0 +1,5 @@ +module Main where + +import Lib (crc) + +main = crc |