diff --git a/src/ethereum_test_tools/tests/test_vm.py b/src/ethereum_test_tools/tests/test_vm.py index a459880937..f4a14a263a 100644 --- a/src/ethereum_test_tools/tests/test_vm.py +++ b/src/ethereum_test_tools/tests/test_vm.py @@ -117,6 +117,30 @@ b"\x60\x20\x60\x00\x60\x00\x60\x00\x60\x00\x73\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" + b"\x00\x00\x00\x00\x00\x00\x00\x00\x12\x34\x5A\xF1", ), + (Op.ADD(1, 2), bytes([0x60, 0x02, 0x60, 0x01, 0x01])), + (Op.ADD(Op.ADD(1, 2), 3), bytes([0x60, 0x03, 0x60, 0x02, 0x60, 0x01, 0x01, 0x01])), + ( + Op.CALL(1, 123, 4, 5, 6, 7, 8), + b"\x60\x08\x60\x07\x60\x06\x60\x05\x60\x04\x60\x7b\x60\x01\xf1", + ), + ( + Op.CALL(1, Address(0x0123), 4, 5, 6, 7, 8), + b"\x60\x08\x60\x07\x60\x06\x60\x05\x60\x04\x73\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" + + b"\x00\x00\x00\x00\x00\x00\x00\x00\x01\x23\x60\x01\xf1", + ), + ( + Op.CALL(1, 0x0123, 4, 5, 6, 7, 8), + b"\x60\x08\x60\x07\x60\x06\x60\x05\x60\x04\x61\x01\x23\x60\x01\xf1", + ), + ( + Op.CALL(1, 123, 4, 5, 6, 7, 8), + b"\x60\x08\x60\x07\x60\x06\x60\x05\x60\x04\x60\x7b\x60\x01\xf1", + ), + ( + Op.CREATE(1, Address(12), 4, 5, 6, 7, 8), + b"\x60\x08\x60\x07\x60\x06\x60\x05\x60\x04\x73\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" + + b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x60\x01\xf0", + ), ], ) def test_opcodes(opcodes: bytes, expected: bytes):