diff options
author | obscuren <geffobscura@gmail.com> | 2014-12-31 00:16:28 +0800 |
---|---|---|
committer | obscuren <geffobscura@gmail.com> | 2014-12-31 00:16:28 +0800 |
commit | 16460b0048b738b0474bc1556d0df469f64bcf26 (patch) | |
tree | 1682b92225e9db58f8f729b64e59736ff6fdf0b1 | |
parent | 89244981a8a9f190a6afc74ec2c584692f04dcdd (diff) | |
download | go-tangerine-16460b0048b738b0474bc1556d0df469f64bcf26.tar.gz go-tangerine-16460b0048b738b0474bc1556d0df469f64bcf26.tar.zst go-tangerine-16460b0048b738b0474bc1556d0df469f64bcf26.zip |
Fixed gas check for vm test
-rw-r--r-- | tests/vm/gh_test.go | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/tests/vm/gh_test.go b/tests/vm/gh_test.go index 1efda7fe0..e06b0ed82 100644 --- a/tests/vm/gh_test.go +++ b/tests/vm/gh_test.go @@ -107,7 +107,9 @@ func RunVmTest(p string, t *testing.T) { logs state.Logs ) - if len(test.Exec) > 0 { + isVmTest := len(test.Exec) > 0 + + if isVmTest { ret, logs, gas, err = helper.RunVm(statedb, env, test.Exec) } else { ret, logs, gas, err = helper.RunState(statedb, env, test.Transaction) @@ -124,10 +126,14 @@ func RunVmTest(p string, t *testing.T) { t.Errorf("%s's return failed. Expected %x, got %x\n", name, rexp, ret) } - if len(test.Gas) > 0 { - gexp := ethutil.Big(test.Gas) - if gexp.Cmp(gas) != 0 { - t.Errorf("%s's gas failed. Expected %v, got %v\n", name, gexp, gas) + if isVmTest { + if len(test.Gas) == 0 && err == nil { + t.Errorf("%s's gas unspecified, indicating an error. VM returned (incorrectly) successfull") + } else { + gexp := ethutil.Big(test.Gas) + if gexp.Cmp(gas) != 0 { + t.Errorf("%s's gas failed. Expected %v, got %v\n", name, gexp, gas) + } } } |