|
@ -4,7 +4,6 @@ import ( |
|
|
"testing" |
|
|
"testing" |
|
|
"time" |
|
|
"time" |
|
|
|
|
|
|
|
|
"github.com/stretchr/testify/assert" |
|
|
|
|
|
"github.com/stretchr/testify/require" |
|
|
"github.com/stretchr/testify/require" |
|
|
merktest "github.com/tendermint/merkleeyes/testutil" |
|
|
merktest "github.com/tendermint/merkleeyes/testutil" |
|
|
"github.com/tendermint/tendermint/rpc/client" |
|
|
"github.com/tendermint/tendermint/rpc/client" |
|
@ -14,25 +13,19 @@ import ( |
|
|
func TestHeaderEvents(t *testing.T) { |
|
|
func TestHeaderEvents(t *testing.T) { |
|
|
require := require.New(t) |
|
|
require := require.New(t) |
|
|
for i, c := range GetClients() { |
|
|
for i, c := range GetClients() { |
|
|
// test if this client implements event switch as well.
|
|
|
|
|
|
evsw, ok := c.(types.EventSwitch) |
|
|
|
|
|
if !assert.True(t, ok, "%d: %v", i, c) { |
|
|
|
|
|
continue |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// start for this test it if it wasn't already running
|
|
|
// start for this test it if it wasn't already running
|
|
|
if !evsw.IsRunning() { |
|
|
|
|
|
|
|
|
if !c.IsRunning() { |
|
|
// if so, then we start it, listen, and stop it.
|
|
|
// if so, then we start it, listen, and stop it.
|
|
|
st, err := evsw.Start() |
|
|
|
|
|
|
|
|
st, err := c.Start() |
|
|
require.Nil(err, "%d: %+v", i, err) |
|
|
require.Nil(err, "%d: %+v", i, err) |
|
|
require.True(st, "%d", i) |
|
|
require.True(st, "%d", i) |
|
|
defer evsw.Stop() |
|
|
|
|
|
|
|
|
defer c.Stop() |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
evtTyp := types.EventStringNewBlockHeader() |
|
|
evtTyp := types.EventStringNewBlockHeader() |
|
|
evt, err := client.WaitForOneEvent(evsw, evtTyp, 1*time.Second) |
|
|
|
|
|
|
|
|
evt, err := client.WaitForOneEvent(c, evtTyp, 1*time.Second) |
|
|
require.Nil(err, "%d: %+v", i, err) |
|
|
require.Nil(err, "%d: %+v", i, err) |
|
|
_, ok = evt.(types.EventDataNewBlockHeader) |
|
|
|
|
|
|
|
|
_, ok := evt.(types.EventDataNewBlockHeader) |
|
|
require.True(ok, "%d: %#v", i, evt) |
|
|
require.True(ok, "%d: %#v", i, evt) |
|
|
// TODO: more checks...
|
|
|
// TODO: more checks...
|
|
|
} |
|
|
} |
|
@ -41,19 +34,13 @@ func TestHeaderEvents(t *testing.T) { |
|
|
func TestTxEvents(t *testing.T) { |
|
|
func TestTxEvents(t *testing.T) { |
|
|
require := require.New(t) |
|
|
require := require.New(t) |
|
|
for i, c := range GetClients() { |
|
|
for i, c := range GetClients() { |
|
|
// test if this client implements event switch as well.
|
|
|
|
|
|
evsw, ok := c.(types.EventSwitch) |
|
|
|
|
|
if !assert.True(t, ok, "%d: %v", i, c) { |
|
|
|
|
|
continue |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// start for this test it if it wasn't already running
|
|
|
// start for this test it if it wasn't already running
|
|
|
if !evsw.IsRunning() { |
|
|
|
|
|
|
|
|
if !c.IsRunning() { |
|
|
// if so, then we start it, listen, and stop it.
|
|
|
// if so, then we start it, listen, and stop it.
|
|
|
st, err := evsw.Start() |
|
|
|
|
|
|
|
|
st, err := c.Start() |
|
|
require.Nil(err, "%d: %+v", i, err) |
|
|
require.Nil(err, "%d: %+v", i, err) |
|
|
require.True(st, "%d", i) |
|
|
require.True(st, "%d", i) |
|
|
defer evsw.Stop() |
|
|
|
|
|
|
|
|
defer c.Stop() |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// make the tx
|
|
|
// make the tx
|
|
@ -66,7 +53,7 @@ func TestTxEvents(t *testing.T) { |
|
|
require.True(txres.Code.IsOK()) |
|
|
require.True(txres.Code.IsOK()) |
|
|
|
|
|
|
|
|
// and wait for confirmation
|
|
|
// and wait for confirmation
|
|
|
evt, err := client.WaitForOneEvent(evsw, evtTyp, 1*time.Second) |
|
|
|
|
|
|
|
|
evt, err := client.WaitForOneEvent(c, evtTyp, 1*time.Second) |
|
|
require.Nil(err, "%d: %+v", i, err) |
|
|
require.Nil(err, "%d: %+v", i, err) |
|
|
// and make sure it has the proper info
|
|
|
// and make sure it has the proper info
|
|
|
txe, ok := evt.(types.EventDataTx) |
|
|
txe, ok := evt.(types.EventDataTx) |
|
|