Skip to content

Commit 3dffc81

Browse files
authored
Merge pull request #21 from janestreet/inline-tests-dune
2 parents 0c8be0f + d654590 commit 3dffc81

File tree

3 files changed

+24
-3
lines changed

3 files changed

+24
-3
lines changed

dune-project

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
(lang dune 1.5)
1+
(lang dune 1.10)

src/dune

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
(library (name ppx_inline_test) (public_name ppx_inline_test)
2-
(kind ppx_rewriter) (ppx_runtime_libraries ppx_inline_test.runtime-lib)
2+
(kind
3+
(ppx_rewriter
4+
(cookies (inline_tests %{inline_tests}))))
5+
(ppx_runtime_libraries ppx_inline_test.runtime-lib)
36
(libraries base ppxlib ppx_inline_test_libname)
47
(preprocess (pps ppxlib.metaquot))
58
(inline_tests.backend (runner_libraries ppx_inline_test.runner.lib)
69
(generate_runner (echo "let () = Ppx_inline_test_lib.Runtime.exit ();;"))
710
(flags "inline-test-runner" %{library-name} -source-tree-root
8-
%{workspace_root} -diff-cmd -)))
11+
%{workspace_root} -diff-cmd -)))

src/ppx_inline_test.ml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,24 @@ let () =
4040
Location.raise_errorf ~loc:id.loc
4141
"invalid 'inline-test' cookie (%s), expected one of: drop, drop_with_deadcode"
4242
s)
43+
;;
44+
45+
(* Same as above, but for the standard one passed by dune *)
46+
let () =
47+
Driver.Cookies.add_simple_handler "inline_tests"
48+
Ast_pattern.(estring __')
49+
~f:(function
50+
| None -> ()
51+
| Some id ->
52+
match id.txt with
53+
| "enabled" -> maybe_drop_mode := Keep
54+
| "disabled" -> maybe_drop_mode := Drop
55+
| "ignored" -> maybe_drop_mode := Drop_with_deadcode
56+
| s ->
57+
Location.raise_errorf ~loc:id.loc
58+
"invalid 'inline_tests' cookie (%s), expected one of: enabled, disabled or ignored"
59+
s)
60+
;;
4361

4462
let maybe_drop loc code =
4563
match !maybe_drop_mode with

0 commit comments

Comments
 (0)