(library
 (name dune_file_watcher_tests_lib)
 (modules dune_file_watcher_tests_lib)
 (libraries dune_file_watcher base stdune threads.posix stdio spawn unix))

(library
 (name dune_file_watcher_tests_macos)
 (modules dune_file_watcher_tests_macos)
 (inline_tests
  (enabled_if
   (and
    (<> %{env:CI=false} true) ;; in github action, CI=true
    (= %{system} macosx)))
  (deps
   (sandbox always)))
 (libraries
  unix
  dune_file_watcher
  dune_file_watcher_tests_lib
  ppx_expect.config
  ppx_expect.config_types
  base
  stdune
  ppx_inline_test.config
  threads.posix
  stdio
  spawn)
 (preprocess
  (pps ppx_expect)))

(library
 (name dune_file_watcher_tests_linux)
 (modules dune_file_watcher_tests_linux)
 (inline_tests
  (enabled_if
   (= %{system} linux))
  (deps
   (sandbox always)))
 (libraries
  dune_file_watcher
  dune_file_watcher_tests_lib
  ppx_expect.config
  ppx_expect.config_types
  base
  stdune
  ppx_inline_test.config
  threads.posix
  stdio
  spawn
  unix)
 (preprocess
  (pps ppx_expect)))

(library
 (name dune_file_watcher_tests_patterns)
 (modules dune_file_watcher_tests_patterns)
 (inline_tests
  (deps
   (sandbox always)))
 (libraries
  base
  dune_config_file
  dune_file_watcher
  ppx_expect.config
  ppx_expect.config_types
  ppx_inline_test.config)
 (preprocess
  (pps ppx_expect)))
