Add PascaLIGO CHECK_SIGNATURE test to suite

This commit is contained in:
John David Pressman 2020-01-17 01:50:06 -08:00
parent 96bcbf572a
commit eb4336b0e7
2 changed files with 16 additions and 0 deletions

View File

@ -0,0 +1,2 @@
function check_signature (const pk: key; const signed: signature; const msg: bytes) : bool is
crypto_check(pk, signed, msg)

View File

@ -1923,6 +1923,19 @@ let key_hash_religo () : unit result =
let%bind () = expect_eq program "check_hash_key" make_input make_expected in
ok ()
let check_signature () : unit result =
let open Tezos_crypto in
let (_, raw_pk, sk) = Signature.generate_key () in
let pk_str = Signature.Public_key.to_b58check raw_pk in
let signed = Signature.sign sk (Bytes.of_string "hello world") in
let%bind program = type_file "./contracts/check_signature.ligo" in
let make_input = e_tuple [e_key pk_str ;
e_signature (Signature.to_b58check signed) ;
e_bytes_ofbytes (Bytes.of_string "hello world")] in
let make_expected = e_bool true in
let%bind () = expect_eq program "check_signature" make_input make_expected in
ok ()
let curry () : unit result =
let%bind program = mtype_file "./contracts/curry.mligo" in
let%bind () =
@ -2059,6 +2072,7 @@ let main = test_suite "Integration (End to End)" [
test "key hash" key_hash ;
test "key hash (mligo)" key_hash_mligo ;
test "key hash (religo)" key_hash_religo ;
test "check signature" check_signature ;
test "chain id" chain_id ;
test "type alias" type_alias ;
test "function" function_ ;