aboutsummaryrefslogtreecommitdiffstats
path: root/internal/ethapi/tracer_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/ethapi/tracer_test.go')
-rw-r--r--internal/ethapi/tracer_test.go25
1 files changed, 20 insertions, 5 deletions
diff --git a/internal/ethapi/tracer_test.go b/internal/ethapi/tracer_test.go
index dbc38bbbc..301ff4840 100644
--- a/internal/ethapi/tracer_test.go
+++ b/internal/ethapi/tracer_test.go
@@ -19,6 +19,7 @@ package ethapi
import (
"errors"
"math/big"
+ "reflect"
"testing"
"time"
@@ -140,12 +141,26 @@ func TestStack(t *testing.T) {
t.Fatal(err)
}
- value, ok := ret.([]int)
- if !ok {
- t.Errorf("Expected return value to be []int, was %T", ret)
+ expected := []int{0, 1, 2}
+ if !reflect.DeepEqual(ret, expected) {
+ t.Errorf("Expected return value to be %#v, got %#v", expected, ret)
+ }
+}
+
+func TestOpcodes(t *testing.T) {
+ tracer, err := NewJavascriptTracer("{opcodes: [], step: function(log) { this.opcodes.push(log.op.toString()); }, result: function() { return this.opcodes; }}")
+ if err != nil {
+ t.Fatal(err)
}
- if len(value) != 3 || value[0] != 0 || value[1] != 1 || value[2] != 2 {
- t.Errorf("Expected return value to be [0 1 2], got %v", value)
+
+ ret, err := runTrace(tracer)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ expected := []string{"PUSH1", "PUSH1", "STOP"}
+ if !reflect.DeepEqual(ret, expected) {
+ t.Errorf("Expected return value to be %#v, got %#v", expected, ret)
}
}