"bytes"
"testing"
- "chain/testutil"
+ "github.com/bytom/bytom/testutil"
)
func TestPushdataOps(t *testing.T) {
dataStack: [][]byte{},
},
wantErr: ErrRunLimitExceeded,
- }, {
- op: OP_1NEGATE,
- startVM: &virtualMachine{
- runLimit: 50000,
- dataStack: [][]byte{},
- },
- wantVM: &virtualMachine{
- runLimit: 49983,
- dataStack: [][]byte{Int64Bytes(-1)},
- },
- }, {
- op: OP_1NEGATE,
- startVM: &virtualMachine{
- runLimit: 1,
- dataStack: [][]byte{},
- },
- wantErr: ErrRunLimitExceeded,
}}
pushdataops := []Op{OP_PUSHDATA1, OP_PUSHDATA2, OP_PUSHDATA4}
data []byte
want []byte
}
- cases := []test{{
- data: nil,
- want: []byte{byte(OP_0)},
- }, {
- data: make([]byte, 255),
- want: append([]byte{byte(OP_PUSHDATA1), 0xff}, make([]byte, 255)...),
- }, {
- data: make([]byte, 1<<8),
- want: append([]byte{byte(OP_PUSHDATA2), 0, 1}, make([]byte, 1<<8)...),
- }, {
- data: make([]byte, 1<<16),
- want: append([]byte{byte(OP_PUSHDATA4), 0, 0, 1, 0}, make([]byte, 1<<16)...),
- }}
+ cases := []test{
+ {
+ data: nil,
+ want: []byte{byte(OP_0)},
+ },
+ {
+ data: make([]byte, 255),
+ want: append([]byte{byte(OP_PUSHDATA1), 0xff}, make([]byte, 255)...),
+ },
+ {
+ data: make([]byte, 1<<8),
+ want: append([]byte{byte(OP_PUSHDATA2), 0, 1}, make([]byte, 1<<8)...),
+ },
+ {
+ data: make([]byte, 1<<16),
+ want: append([]byte{byte(OP_PUSHDATA4), 0, 0, 1, 0}, make([]byte, 1<<16)...),
+ },
+ {
+ data: make([]byte, 1<<16),
+ want: append([]byte{byte(OP_PUSHDATA4), 0, 0, 1, 0}, make([]byte, 1<<16)...),
+ },
+ }
for i := 1; i <= 75; i++ {
cases = append(cases, test{
}
for _, c := range cases {
- got := PushdataBytes(c.data)
+ got := PushDataBytes(c.data)
dl := len(c.data)
if dl > 10 {
dl = 10
}
if !bytes.Equal(got, c.want) {
- t.Errorf("PushdataBytes(%x...) = %x...[%d] want %x...[%d]", c.data[:dl], got[:dl], len(got), c.want[:dl], len(c.want))
+ t.Errorf("PushDataBytes(%x...) = %x...[%d] want %x...[%d]", c.data[:dl], got[:dl], len(got), c.want[:dl], len(c.want))
}
}
}
}
for _, c := range cases {
- got := PushdataInt64(c.num)
+ got := PushDataInt64(c.num)
if !bytes.Equal(got, c.want) {
- t.Errorf("PushdataInt64(%d) = %x want %x", c.num, got, c.want)
+ t.Errorf("PushDataInt64(%d) = %x want %x", c.num, got, c.want)
}
}
}