From 457092d662c5eef3257ba2496b66b824fbfe3073 Mon Sep 17 00:00:00 2001 From: Christopher Goes Date: Tue, 3 Apr 2018 20:19:41 +0200 Subject: [PATCH] TestStartStandAlone without cobra --- server/start_test.go | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) diff --git a/server/start_test.go b/server/start_test.go index 3a37de1b5c..b2716da24d 100644 --- a/server/start_test.go +++ b/server/start_test.go @@ -1,6 +1,7 @@ package server import ( + "io/ioutil" "os" "testing" "time" @@ -9,25 +10,34 @@ import ( "github.com/stretchr/testify/require" "github.com/cosmos/cosmos-sdk/mock" + "github.com/tendermint/abci/server" "github.com/tendermint/tmlibs/log" ) func TestStartStandAlone(t *testing.T) { - defer setupViper(t)() + home, err := ioutil.TempDir("", "mock-sdk-cmd") + defer func() { + os.RemoveAll(home) + }() logger := log.NewNopLogger() initCmd := InitCmd(mock.GenInitOptions, logger) - err := initCmd.RunE(nil, nil) + err = initCmd.RunE(nil, nil) require.NoError(t, err) - // set up app and start up - viper.Set(flagWithTendermint, false) - viper.Set(flagAddress, "localhost:11122") - startCmd := StartCmd(mock.NewApp, logger) - startCmd.Flags().Set(flagAddress, FreeTCPAddr(t)) // set to a new free address - timeout := time.Duration(10) * time.Second + app, err := mock.NewApp(home, logger) + require.Nil(t, err) + svr, err := server.NewServer(FreeTCPAddr(t), "socket", app) + require.Nil(t, err, "Error creating listener") + svr.SetLogger(logger.With("module", "abci-server")) + svr.Start() + + timer := time.NewTimer(time.Duration(5) * time.Second) + select { + case <-timer.C: + svr.Stop() + } - close(RunOrTimeout(startCmd, timeout, t)) } func TestStartWithTendermint(t *testing.T) { @@ -43,7 +53,7 @@ func TestStartWithTendermint(t *testing.T) { viper.Set(flagWithTendermint, true) startCmd := StartCmd(mock.NewApp, logger) startCmd.Flags().Set(flagAddress, FreeTCPAddr(t)) // set to a new free address - timeout := time.Duration(10) * time.Second + timeout := time.Duration(5) * time.Second close(RunOrTimeout(startCmd, timeout, t)) }