11652: Add "recursive" flag to groups#contents controller.
[arvados.git] / services / ws / session_v0_test.go
index f4dc23fecfa3fd94f3de59c7629135b9461a83b9..85e36560e8d19d8364a8b531b89b89a356948bd0 100644 (file)
@@ -5,8 +5,6 @@ import (
        "encoding/json"
        "fmt"
        "io"
-       "net"
-       "net/http"
        "net/url"
        "os"
        "time"
@@ -228,9 +226,9 @@ func (s *v0Suite) expectLog(c *check.C, r *json.Decoder) *arvados.Log {
        return lg
 }
 
-func (s *v0Suite) testClient() (*testServer, *websocket.Conn, *json.Decoder, *json.Encoder) {
+func (s *v0Suite) testClient() (*server, *websocket.Conn, *json.Decoder, *json.Encoder) {
        srv := newTestServer()
-       conn, err := websocket.Dial("ws://"+srv.addr+"/websocket?api_token="+s.token, "", "http://"+srv.addr)
+       conn, err := websocket.Dial("ws://"+srv.listener.Addr().String()+"/websocket?api_token="+s.token, "", "http://"+srv.listener.Addr().String())
        if err != nil {
                panic(err)
        }
@@ -238,49 +236,3 @@ func (s *v0Suite) testClient() (*testServer, *websocket.Conn, *json.Decoder, *js
        r := json.NewDecoder(conn)
        return srv, conn, r, w
 }
-
-type testServer struct {
-       http.Server
-       addr string
-       stop chan bool
-}
-
-func (srv *testServer) Close() {
-       close(srv.stop)
-}
-
-func newTestServer() *testServer {
-       ln, err := net.Listen("tcp", ":")
-       if err != nil {
-               panic(err)
-       }
-       cfg := defaultConfig()
-       cfg.Client = *(arvados.NewClientFromEnv())
-       es := &pgEventSource{
-               DataSource: testDBConfig().ConnectionString(),
-               QueueSize:  4,
-       }
-       srv := &testServer{
-               Server: http.Server{
-                       Addr:         ":",
-                       ReadTimeout:  10 * time.Second,
-                       WriteTimeout: 10 * time.Second,
-                       Handler: &router{
-                               Config:         &cfg,
-                               eventSource:    es,
-                               newPermChecker: func() permChecker { return newPermChecker(cfg.Client) },
-                       },
-               },
-               addr: ln.Addr().String(),
-               stop: make(chan bool),
-       }
-       go es.Run()
-       go srv.Serve(ln)
-       go func() {
-               <-srv.stop
-               ln.Close()
-               es.cancel()
-       }()
-       es.waitReady()
-       return srv
-}