mte/test/test.ml

36 lines
872 B
OCaml
Raw Normal View History

let () =
let open Json in
let check jsont s =
let encode v = encode jsont v |> Result.get_ok in
let decode v = decode jsont v |> Result.get_ok in
let ts = decode s in
let s' = encode ts in
let ts' = decode s' in
let s'' = encode ts' in
assert (String.equal s' s'')
in
let check_bad jsont s =
let decode = decode jsont in
assert (Result.is_error (decode s))
in
check Timestamp.jsont {|{"t_s": 123456780}|};
check Timestamp.jsont {|{"t_s": "never"}|};
check_bad Timestamp.jsont {|{"t_s": "123456780"}|};
check_bad Timestamp.jsont {|{"t_s": "agagou"}|};
()
2025-10-03 19:54:18 +02:00
let () =
let open Types.Amount in
let v =
{
sign= Some `Plus
; currency= `Eur
; value= Int64.of_int 25
; fraction= Int64.of_int 678
}
in
let s = to_string v in
let v' = of_string s |> Result.get_ok in
assert (v = v');
()