package coregrpc_test import ( "context" "testing" "github.com/stretchr/testify/require" "github.com/tendermint/tendermint/abci/example/kvstore" "github.com/tendermint/tendermint/config" "github.com/tendermint/tendermint/libs/service" coregrpc "github.com/tendermint/tendermint/rpc/grpc" rpctest "github.com/tendermint/tendermint/rpc/test" ) func NodeSuite(t *testing.T) (service.Service, *config.Config) { t.Helper() ctx, cancel := context.WithCancel(context.Background()) conf, err := rpctest.CreateConfig(t.Name()) require.NoError(t, err) // start a tendermint node in the background to test against app := kvstore.NewApplication() node, closer, err := rpctest.StartTendermint(ctx, conf, app) require.NoError(t, err) t.Cleanup(func() { _ = closer(ctx) cancel() }) return node, conf } func TestBroadcastTx(t *testing.T) { _, conf := NodeSuite(t) res, err := rpctest.GetGRPCClient(conf).BroadcastTx( context.Background(), &coregrpc.RequestBroadcastTx{Tx: []byte("this is a tx")}, ) require.NoError(t, err) require.EqualValues(t, 0, res.CheckTx.Code) require.EqualValues(t, 0, res.DeliverTx.Code) }