|
|
@@ -64,14 +64,15 @@ type Env struct {
|
|
|
type VmTest struct {
|
|
|
Callcreates interface{}
|
|
|
//Env map[string]string
|
|
|
- Env Env
|
|
|
- Exec map[string]string
|
|
|
- Transaction map[string]string
|
|
|
- Logs []Log
|
|
|
- Gas string
|
|
|
- Out string
|
|
|
- Post map[string]Account
|
|
|
- Pre map[string]Account
|
|
|
+ Env Env
|
|
|
+ Exec map[string]string
|
|
|
+ Transaction map[string]string
|
|
|
+ Logs []Log
|
|
|
+ Gas string
|
|
|
+ Out string
|
|
|
+ Post map[string]Account
|
|
|
+ Pre map[string]Account
|
|
|
+ PostStateRoot string
|
|
|
}
|
|
|
|
|
|
func RunVmTest(p string, t *testing.T) {
|
|
|
@@ -154,6 +155,12 @@ func RunVmTest(p string, t *testing.T) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ if !isVmTest {
|
|
|
+ if !bytes.Equal(ethutil.Hex2Bytes(test.PostStateRoot), statedb.Root()) {
|
|
|
+ t.Errorf("Post state root error. Expected %s, got %x", test.PostStateRoot, statedb.Root())
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if len(test.Logs) > 0 {
|
|
|
if len(test.Logs) != len(logs) {
|
|
|
t.Errorf("log length mismatch. Expected %d, got %d", len(test.Logs), len(logs))
|