Skip to content

Commit

Permalink
Merge pull request #21 from janestreet/inline-tests-dune
Browse files Browse the repository at this point in the history
  • Loading branch information
xclerc committed Mar 2, 2020
2 parents 0c8be0f + d654590 commit 3dffc81
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 3 deletions.
2 changes: 1 addition & 1 deletion dune-project
@@ -1 +1 @@
(lang dune 1.5)
(lang dune 1.10)
7 changes: 5 additions & 2 deletions src/dune
@@ -1,8 +1,11 @@
(library (name ppx_inline_test) (public_name ppx_inline_test)
(kind ppx_rewriter) (ppx_runtime_libraries ppx_inline_test.runtime-lib)
(kind
(ppx_rewriter
(cookies (inline_tests %{inline_tests}))))
(ppx_runtime_libraries ppx_inline_test.runtime-lib)
(libraries base ppxlib ppx_inline_test_libname)
(preprocess (pps ppxlib.metaquot))
(inline_tests.backend (runner_libraries ppx_inline_test.runner.lib)
(generate_runner (echo "let () = Ppx_inline_test_lib.Runtime.exit ();;"))
(flags "inline-test-runner" %{library-name} -source-tree-root
%{workspace_root} -diff-cmd -)))
%{workspace_root} -diff-cmd -)))
18 changes: 18 additions & 0 deletions src/ppx_inline_test.ml
Expand Up @@ -40,6 +40,24 @@ let () =
Location.raise_errorf ~loc:id.loc
"invalid 'inline-test' cookie (%s), expected one of: drop, drop_with_deadcode"
s)
;;

(* Same as above, but for the standard one passed by dune *)
let () =
Driver.Cookies.add_simple_handler "inline_tests"
Ast_pattern.(estring __')
~f:(function
| None -> ()
| Some id ->
match id.txt with
| "enabled" -> maybe_drop_mode := Keep
| "disabled" -> maybe_drop_mode := Drop
| "ignored" -> maybe_drop_mode := Drop_with_deadcode
| s ->
Location.raise_errorf ~loc:id.loc
"invalid 'inline_tests' cookie (%s), expected one of: enabled, disabled or ignored"
s)
;;

let maybe_drop loc code =
match !maybe_drop_mode with
Expand Down

0 comments on commit 3dffc81

Please sign in to comment.