shrub/tests/ethereum/encoding.hoon

50 lines
1.9 KiB
Plaintext
Raw Normal View History

/+ tester, ethereum
=, ethereum
|_ tester-type:tester
::TODO copy this:
:: https://github.com/ethereum/web3.js/blob/master/test/coder.encodeParam.js
++ test-testing-the-tests
(expect-eq 4 4 "trivial")
::
++ test-static-args
=; [res=tape wan=tape]
(expect-eq res wan "result mismatch")
:- %- encode-args
:~ [%string "dave"]
[%bool &]
[%array [%uint 1] [%uint 2] [%uint 3] ~]
==
"""
0000000000000000000000000000000000000000000000000000000000000060
0000000000000000000000000000000000000000000000000000000000000001
00000000000000000000000000000000000000000000000000000000000000a0
0000000000000000000000000000000000000000000000000000000000000004
6461766500000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000003
0000000000000000000000000000000000000000000000000000000000000001
0000000000000000000000000000000000000000000000000000000000000002
0000000000000000000000000000000000000000000000000000000000000003
"""
::
++ test-dynamic-args
=; [res=tape wan=tape]
(expect-eq res wan "result mismatch")
:- %- encode-args
:~ [%uint `@ud`0x123]
[%array [%uint `@ud`0x456] [%uint `@ud`0x789] ~]
[%bytes-n `@`(crip (flop "1234567890"))]
[%bytes `@`(crip (flop "Hello, world!"))]
==
"""
0000000000000000000000000000000000000000000000000000000000000123
0000000000000000000000000000000000000000000000000000000000000080
3132333435363738393000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000e0
0000000000000000000000000000000000000000000000000000000000000002
0000000000000000000000000000000000000000000000000000000000000456
0000000000000000000000000000000000000000000000000000000000000789
000000000000000000000000000000000000000000000000000000000000000d
48656c6c6f2c20776f726c642100000000000000000000000000000000000000
"""
--