core/vm: update tests

This commit is contained in:
Felix Lange 2025-07-07 10:51:18 +02:00
parent 8c72226321
commit 891ae31ad2

View file

@ -974,18 +974,18 @@ func TestPush(t *testing.T) {
} }
func TestOpCLZ(t *testing.T) { func TestOpCLZ(t *testing.T) {
// set up once
evm := NewEVM(BlockContext{}, nil, params.TestChainConfig, Config{}) evm := NewEVM(BlockContext{}, nil, params.TestChainConfig, Config{})
tests := []struct { tests := []struct {
name string name string
inputHex string // hexadecimal input for clarity inputHex string
want uint64 // expected CLZ result want uint64 // expected CLZ result
}{ }{
{"zero", "0x0", 256}, {"zero", "0x0", 256},
{"one", "0x1", 255}, {"one", "0x1", 255},
{"all-ones (256 bits)", "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0}, {"all-ones (256 bits)", "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 0},
{"low-10-bytes ones", "0xffffffffff", 216}, // 10 bytes = 80 bits, so 256-80=176? Actually input is 0xffffffffff = 40 bits so 256-40=216 {"low-40-bits", "0xffffffffff", 216}, // 40 bits, so 256-40 = 216
{"low-11-bits", "0x6ff", 245}, // 0x6ff = 0b11011111111 (11 bits), so 256-11 = 245
} }
for _, tc := range tests { for _, tc := range tests {
@ -996,9 +996,8 @@ func TestOpCLZ(t *testing.T) {
// parse input // parse input
val := new(uint256.Int) val := new(uint256.Int)
if _, err := fmt.Sscan(tc.inputHex, val); err != nil { if err := val.SetFromHex(tc.inputHex); err != nil {
// fallback: try hex t.Fatal("invalid hex uint256:", tc.inputHex)
val.SetFromHex(tc.inputHex)
} }
stack.push(val) stack.push(val)
@ -1008,7 +1007,6 @@ func TestOpCLZ(t *testing.T) {
t.Fatalf("stack length = %d; want 1", gotLen) t.Fatalf("stack length = %d; want 1", gotLen)
} }
result := stack.pop() result := stack.pop()
if got := result.Uint64(); got != tc.want { if got := result.Uint64(); got != tc.want {
t.Fatalf("clz(%q) = %d; want %d", tc.inputHex, got, tc.want) t.Fatalf("clz(%q) = %d; want %d", tc.inputHex, got, tc.want)
} }