Create an integration test for Etcd:

- Integration test specifically spins up an Etcd cluster with three
    nodes.
This commit is contained in:
Advait Shinde 2016-02-25 23:31:35 +00:00
parent 8954aa7118
commit a99010b8c2
4 changed files with 75 additions and 0 deletions

27
integration/etcd_test.go Normal file
View file

@ -0,0 +1,27 @@
package main
import (
"net/http"
"os/exec"
"time"
"fmt"
checker "github.com/vdemeester/shakers"
check "gopkg.in/check.v1"
)
func (s *EtcdSuite) TestSimpleConfiguration(c *check.C) {
cmd := exec.Command(traefikBinary, "--configFile=fixtures/etcd/simple.toml")
err := cmd.Start()
c.Assert(err, checker.IsNil)
defer cmd.Process.Kill()
time.Sleep(1000 * time.Millisecond)
// TODO validate : run on 80
resp, err := http.Get("http://127.0.0.1:8000/")
// Expected no response as we did not configure anything
c.Assert(resp, checker.IsNil)
c.Assert(err, checker.NotNil)
c.Assert(err.Error(), checker.Contains, fmt.Sprintf("getsockopt: connection refused"))
}