github.com/status-im/status-go@v1.1.0/transactions/types_test.go (about) 1 package transactions 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 8 "github.com/status-im/status-go/eth-node/types" 9 ) 10 11 func TestSendTxArgsValidity(t *testing.T) { 12 // 1. If only data fields is set, valid and return data 13 14 bytes1 := types.HexBytes([]byte{0xAA, 0xBB, 0xCC, 0xDD}) 15 bytes2 := types.HexBytes([]byte{0x00, 0x01, 0x02}) 16 17 bytesEmpty := types.HexBytes([]byte{}) 18 19 doSendTxValidityTest(t, SendTxArgs{}, true, nil) 20 doSendTxValidityTest(t, SendTxArgs{Input: bytes1}, true, bytes1) 21 doSendTxValidityTest(t, SendTxArgs{Data: bytes1}, true, bytes1) 22 doSendTxValidityTest(t, SendTxArgs{Input: bytes1, Data: bytes1}, true, bytes1) 23 doSendTxValidityTest(t, SendTxArgs{Input: bytes1, Data: bytes2}, false, nil) 24 doSendTxValidityTest(t, SendTxArgs{Input: bytes1, Data: bytesEmpty}, true, bytes1) 25 doSendTxValidityTest(t, SendTxArgs{Input: bytesEmpty, Data: bytes1}, true, bytes1) 26 doSendTxValidityTest(t, SendTxArgs{Input: bytesEmpty, Data: bytesEmpty}, true, bytesEmpty) 27 } 28 29 func doSendTxValidityTest(t *testing.T, args SendTxArgs, expectValid bool, expectValue types.HexBytes) { 30 assert.Equal(t, expectValid, args.Valid(), "Valid() returned unexpected value") 31 if expectValid { 32 assert.Equal(t, expectValue, args.GetInput(), "GetInput() returned unexpected value") 33 } 34 }