Permalink
Browse files

commands: Fix failing Travis server test

  • Loading branch information...
bep committed Apr 12, 2018
1 parent 14c35c8 commit 9c782d5147bfea0dd85cf3374f598f0176f204eb
Showing with 9 additions and 16 deletions.
  1. +3 −9 commands/server.go
  2. +6 −7 commands/server_test.go
@@ -41,8 +41,6 @@ import (
type serverCmd struct {
// Can be used to stop the server. Useful in tests
stop <-chan bool
// Can be used to receive notification about when the server is started. Useful in tests.
started chan<- bool
disableLiveReload bool
navigateToChanged bool
@@ -60,11 +58,11 @@ type serverCmd struct {
}
func newServerCmd() *serverCmd {
return newServerCmdSignaled(nil, nil)
return newServerCmdSignaled(nil)
}
func newServerCmdSignaled(stop <-chan bool, started chan<- bool) *serverCmd {
cc := &serverCmd{stop: stop, started: started}
func newServerCmdSignaled(stop <-chan bool) *serverCmd {
cc := &serverCmd{stop: stop}
cc.baseBuilderCmd = newBuilderCmd(&cobra.Command{
Use: "server",
@@ -400,10 +398,6 @@ func (c *commandeer) serve(s *serverCmd) error {
}()
}
if s.started != nil {
s.started <- true
}
jww.FEEDBACK.Println("Press Ctrl+C to stop")
if s.stop != nil {
@@ -38,9 +38,9 @@ func TestServer(t *testing.T) {
os.RemoveAll(dir)
}()
stop, started := make(chan bool), make(chan bool)
stop := make(chan bool)
scmd := newServerCmdSignaled(stop, started)
scmd := newServerCmdSignaled(stop)
cmd := scmd.getCommand()
cmd.SetArgs([]string{"-s=" + dir, fmt.Sprintf("-p=%d", port)})
@@ -50,11 +50,10 @@ func TestServer(t *testing.T) {
assert.NoError(err)
}()
select {
case <-started:
case <-time.After(2 * time.Second):
t.Fatal("server start took too long")
}
// There is no way to know exactly when the server is ready for connections.
// We could improve by something like https://golang.org/pkg/net/http/httptest/#Server
// But for now, let us sleep and pray!
time.Sleep(2 * time.Second)
resp, err := http.Get("http://localhost:1331/")
assert.NoError(err)

0 comments on commit 9c782d5

Please sign in to comment.