misc: add test for api readiness
Brian Tiger Chow committed
Feb 6, 2015 at 12:09 UTC
87c6604b56dc64e289ab1b1175fea151df1db46f
1 file changed
+34
test/api-startup/main.go
new
+34
@@ -0,0 +1,34 @@
1
+package main
2
+
3
+import (
4
+ "fmt"
5
+ "log"
6
+ "net/http"
7
+ "sync"
8
+ "time"
9
+)
10
+
11
+func main() {
12
+ when := make(chan (time.Time), 2)
13
+ var wg sync.WaitGroup
14
+ wg.Add(2)
15
+ for _, port := range []string{"5001", "8080"} {
16
+ go func(port string) {
17
+ defer wg.Done()
18
+ for {
19
+ r, err := http.Get(fmt.Sprintf("http://127.0.0.1:%s", port))
20
+ if err != nil {
21
+ continue
22
+ }
23
+ t := time.Now()
24
+ when <- t
25
+ log.Println(port, t, r.StatusCode)
26
+ break
27
+ }
28
+ }(port)
29
+ }
30
+ wg.Wait()
31
+ first := <-when
32
+ second := <-when
33
+ log.Println(second.Sub(first))
34
+}