I have two libraries:
lib/
dune
src.ml
src.mli
test/
dune
test.ml
both are libraries and I am testing in the test library with ppx_inline_test
as i do not want them to be included in the library
dune file in test looks like this:
(library
(name Test_my_lib)
(preprocess (pps ppx_inline_test ppx_expect))
(libraries base my_other_lib pp ppx_inline_test)
(inline_tests)
)
other one is identical without the inline tests
Obviously I can’t access the functions from src.ml
in the test library that way.
Is there a way I can test these functions from a different module without making them public? If not how can I easily test functions from another module without having the tests backed into the library (I am avoiding that mainly because I thought it’s good practice)?
I’ve tried putting a separate .mli file including more definitions in the test module but that way it complains about not finding the source.
1