package ppx_quick_test

  1. Overview
  2. Docs
Spiritual equivalent of let%expect_test, but for property based tests as an ergonomic wrapper to write quickcheck tests.

Install

dune-project
 Dependency

Authors

Maintainers

Sources

v0.17.1.tar.gz
md5=d6f4ee666c0f68d41bd21ba5629a8ce0
sha512=40367c43059e3b25cc82673e30989d86522967107d6ae3f89233500193c9a9df205c9d697f45b9d7b2a70acb55691365bcc9d2c284a5089b98fd6de7032c71fe

doc/src/ppx_quick_test.expander/quick_test_header_footer.ml.html

Source file quick_test_header_footer.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
open! Core
open! Ppxlib

let expand_impl_header loc =
  let loc = { loc with loc_end = loc.loc_start } in
  let open (val Ast_builder.make loc) in
  let open Merlin_helpers in
  let filename_expr =
    estring (Ppx_here_expander.expand_filename loc.loc_start.pos_fname)
  in
  let create_file_corrections_expr =
    [%expr
      Ppx_quick_test_runtime_lib.File_corrections.create ~filename:[%e filename_expr]]
  in
  [%str let () = [%e hide_expression create_file_corrections_expr]]
;;

let expand_impl_footer loc =
  let loc = { loc with loc_start = loc.loc_end } in
  let open (val Ast_builder.make loc) in
  let open Merlin_helpers in
  let filename_expr =
    estring (Ppx_here_expander.expand_filename loc.loc_start.pos_fname)
  in
  let make_corrected_file_function_expression =
    [%expr
      Ppx_quick_test_runtime_lib.File_corrections.make_corrected_file
        ~filename:[%e filename_expr]]
  in
  [%str let () = [%e hide_expression make_corrected_file_function_expression]]
;;

let expand_enclose_impl loc = expand_impl_header loc, expand_impl_footer loc