Some checks are pending
docker-build-cometbft / vars (push) Waiting to run
docker-build-cometbft / build-images (amd64, ubuntu-24.04) (push) Blocked by required conditions
docker-build-cometbft / build-images (arm64, ubuntu-24.04-arm) (push) Blocked by required conditions
docker-build-cometbft / merge-images (push) Blocked by required conditions
docker-build-e2e-node / vars (push) Waiting to run
docker-build-e2e-node / build-images (amd64, ubuntu-24.04) (push) Blocked by required conditions
docker-build-e2e-node / build-images (arm64, ubuntu-24.04-arm) (push) Blocked by required conditions
docker-build-e2e-node / merge-images (push) Blocked by required conditions
39 lines
757 B
Go
39 lines
757 B
Go
package client
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
type Tx []byte
|
|
|
|
type Foo struct {
|
|
Bar int
|
|
Baz string
|
|
}
|
|
|
|
func TestArgToJSON(t *testing.T) {
|
|
assert := assert.New(t)
|
|
require := require.New(t)
|
|
|
|
cases := []struct {
|
|
input interface{}
|
|
expected string
|
|
}{
|
|
{[]byte("1234"), "0x31323334"},
|
|
{Tx("654"), "0x363534"},
|
|
{Foo{7, "hello"}, `{"Bar":"7","Baz":"hello"}`},
|
|
}
|
|
|
|
for i, tc := range cases {
|
|
args := map[string]interface{}{"data": tc.input}
|
|
err := argsToJSON(args)
|
|
require.Nil(err, "%d: %+v", i, err)
|
|
require.Equal(1, len(args), "%d", i)
|
|
data, ok := args["data"].(string)
|
|
require.True(ok, "%d: %#v", i, args["data"])
|
|
assert.Equal(tc.expected, data, "%d", i)
|
|
}
|
|
}
|