tendermint/node/node_test.go

43 lines
788 B
Go
Raw Normal View History

2015-07-21 15:15:40 -07:00
package node
import (
"testing"
"time"
"github.com/stretchr/testify/assert"
2017-05-02 00:53:32 -07:00
"github.com/tendermint/tmlibs/log"
cfg "github.com/tendermint/tendermint/config"
2015-07-21 15:15:40 -07:00
)
func TestNodeStartStop(t *testing.T) {
2017-05-04 19:33:08 -07:00
config := cfg.ResetTestRoot("node_node_test")
2015-12-01 20:12:01 -08:00
2015-07-21 15:15:40 -07:00
// Create & start node
2017-09-21 14:08:17 -07:00
n, err := DefaultNewNode(config, log.TestingLogger())
assert.NoError(t, err, "expected no err on DefaultNewNode")
2015-07-21 15:15:40 -07:00
n.Start()
2017-05-02 00:53:32 -07:00
t.Logf("Started node %v", n.sw.NodeInfo())
ticker := time.NewTicker(10 * time.Millisecond)
select {
case <-ticker.C:
if n.IsRunning() {
return
}
case <-time.After(5 * time.Second):
t.Fatal("timed out waiting for start")
}
2015-07-21 15:15:40 -07:00
go func() {
n.Stop()
}()
2015-07-21 15:15:40 -07:00
select {
case <-n.Quit:
case <-time.After(5 * time.Second):
2015-07-21 15:15:40 -07:00
t.Fatal("timed out waiting for shutdown")
}
}