package octez-libs
Install
    
    dune-project
 Dependency
Authors
Maintainers
Sources
sha256=dbc3b675aee59c2c574e5d0a771193a2ecfca31e7a5bc5aed66598080596ce1c
    
    
  sha512=b97ed762b9d24744305c358af0d20f394376b64bfdd758dd4a81775326caf445caa57c4f6445da3dd6468ff492de18e4c14af6f374dfcbb7e4d64b7b720e5e2a
    
    
  doc/octez-libs.test-helpers/Tezos_test_helpers/Qcheck2_helpers/index.html
Module Tezos_test_helpers.Qcheck2_helpersSource
val qcheck_wrap : 
  ?verbose:bool ->
  ?long:bool ->
  ?rand:Random.State.t ->
  QCheck2.Test.t list ->
  unit Alcotest.test_case listWrap QCheck tests into Alcotest.
val qcheck_wrap_lwt : 
  ?verbose:bool ->
  ?long:bool ->
  ?rand:Random.State.t ->
  QCheck2.Test.t list ->
  (string * [ `Quick | `Slow ] * (unit -> unit Lwt.t)) listWrap QCheck tests into Alcotest_lwt.
val qcheck_make_result : 
  ?count:int ->
  ?print:'a QCheck2.Print.t ->
  ?pp_error:(Format.formatter -> 'b -> unit) ->
  ?check:((bool, 'b) result -> bool) ->
  name:string ->
  gen:'a QCheck2.Gen.t ->
  ('a -> (bool, 'b) result) ->
  QCheck2.Test.tqcheck_make_result ?print ?pp_error ?count ?check ~name ~gen f is a wrapper around QCheck2.Test.make where f returns a result type. If check is not provided and if the result of f is an error, Qcheck2.Test.fail_reportf is called and the error is shown if pp_error is provided.
val qcheck_make_lwt : 
  ?count:int ->
  ?print:'a QCheck2.Print.t ->
  extract:(bool Lwt.t -> bool) ->
  name:string ->
  gen:'a QCheck2.Gen.t ->
  ('a -> bool Lwt.t) ->
  QCheck2.Test.tqcheck_make_lwt ?print ?count ~extract ~name ~gen f is a wrapper around QCheck2.Test.make where f returns a bool Lwt.t. extract needs to be provided to extract the bool from Lwt, e.g. Lwt_main.run.
val qcheck_make_result_lwt : 
  ?count:int ->
  ?print:'a QCheck2.Print.t ->
  ?pp_error:(Format.formatter -> 'b -> unit) ->
  ?check:((bool, 'b) result -> bool) ->
  extract:((bool, 'b) result Lwt.t -> (bool, 'b) result) ->
  name:string ->
  gen:'a QCheck2.Gen.t ->
  ('a -> (bool, 'b) result Lwt.t) ->
  QCheck2.Test.tqcheck_make_result_lwt ?print ?count ~extract ~name ~gen f is the combination of qcheck_make_result and qcheck_make_lwt.
val qcheck_eq_tests : 
  eq:('a -> 'a -> bool) ->
  gen:'a QCheck2.Gen.t ->
  eq_name:string ->
  QCheck2.Test.t listqcheck_eq_tests ~eq ~gen ~eq_name returns three tests of eq: reflexivity, symmetry, and transitivity.
eq_name should be the name of the function defining eq. For example, given an equality function defined as let mytype_eq = ..., call qcheck_eq_tests mytype_eq gen "mytype_eq". eq_name is only used for logging.
val qcheck_eq : 
  ?pp:(Format.formatter -> 'a -> unit) ->
  ?cmp:('a -> 'a -> int) ->
  ?eq:('a -> 'a -> bool) ->
  ?__LOC__:string ->
  'a ->
  'a ->
  boolqcheck_eq pp cmp eq a b evaluates whether a and b are equal, and if they are not, raises a failure and prints an error message. Equality is evaluated as follows:
- use a provided 
eq - if no 
eqis provided, use a providedcmp - if neither 
eqnorcmpis provided, useStdlib.compare 
If pp is provided, use this to print x and y if they are not equal.
If __LOC__ is provided, print it at the beginning of the error message when applicable.
val qcheck_neq : 
  ?pp:(Format.formatter -> 'a -> unit) ->
  ?cmp:('a -> 'a -> int) ->
  ?eq:('a -> 'a -> bool) ->
  'a ->
  'a ->
  boolSimilar to qcheck_eq but tests that two values are not equal.
val qcheck_eq' : 
  ?pp:(Format.formatter -> 'a -> unit) ->
  ?cmp:('a -> 'a -> int) ->
  ?eq:('a -> 'a -> bool) ->
  expected:'a ->
  actual:'a ->
  unit ->
  boolLabeled variant of qcheck_eq. The unit argument is necessary as OCaml requires at least one positional (non-labeled) argument in case of optional arguments.
val qcheck_cond : 
  ?pp:(Format.formatter -> 'a -> unit) ->
  cond:('a -> bool) ->
  'a ->
  unit ->
  boolqcheck_cond pp cond a evaluate cond a, if this condition is false, raises a failure and prints an error message.
If pp is provided, use this to print a if cond a is false.
int64_range_gen a b generates an int64 between a inclusive and b inclusive.
Poorman's implementation until https://github.com/c-cube/qcheck/issues/105 is done.
int32_range_gen a b generates an int32 between a inclusive and b inclusive.
Poorman's implementation until https://github.com/c-cube/qcheck/issues/105 is done.
int64_strictly_positive_gen x generates an int64 between 1 inclusive and x inclusive.
This will fail if x is not strictly positive.
int_strictly_positive_gen x generates an int between 1 inclusive and x inclusive.
This will fail if x is not strictly positive.
uint16 is a generator of unsigned int16 values
int16 is a generator of signed int16 values
uint8 is a generator of unsigned int8 values
int8 is a generator of signed int8 values
string_fixed n is a generator of strings of length n.
bytes_gen is a QCheck2.Gen.t for bytes.
small_bytes_gen is a QCheck2.Gen.t for bytes of small size.
bytes_fixed_gen n is a QCheck2.Gen.t for bytes of length n.
endpoint_gen is a QCheck2.Gen.t for endpoints (such as octez-client's --endpoint flag). It returns URLs of the form: (http|https)://(string\.)+(:port)?. It is by no means the most general Uri.t generator. Generalize it if needed.
A generator that returns a sublist of the given list. Lists returned by this generator are not in the same order as the given list (they are shuffled). This generator can return a list equal to the input list (this generator does not guarantee to return strict sublists of the input list).
A generator that returns lists whose elements are from the given list, preserving the order. For example, given the input list 0, 1, 2, this generator can produce , 0, 0, 2, 1, 2, 1, etc.
of_option_gen gen converts a generator gen of optional values into a generator of values by rerunning the generator if the generated value was a None until a Some is generated.
Be careful: if None is always returned, this hangs forever!
Map-related generators.
val test_roundtrip : 
  count:int ->
  title:string ->
  gen:'a QCheck2.Gen.t ->
  eq:('a -> 'a -> bool) ->
  'a Data_encoding.t ->
  QCheck2.Test.tTest the roundtripness of an encoding both in JSON and binary formats.
val test_roundtrip_through_binary : 
  count:int ->
  title:string ->
  gen:'a QCheck2.Gen.t ->
  eq:('a -> 'a -> bool) ->
  'a Data_encoding.t ->
  'a Data_encoding.t ->
  QCheck2.Test.tTest the roundtripness of two encodings in binary formats.