Merge branch '18941-arv-prefetch' refs #18941
[arvados.git] / services / ws / event_source_test.go
index ea6063a0c3a718dde7baa52a7a9aa5504b0e5f16..b7b8ac3006f3fa6af19de31737af82129dbf8642 100644 (file)
@@ -2,7 +2,7 @@
 //
 // SPDX-License-Identifier: AGPL-3.0
 
-package main
+package ws
 
 import (
        "database/sql"
@@ -10,7 +10,9 @@ import (
        "sync"
        "time"
 
-       "git.curoverse.com/arvados.git/sdk/go/config"
+       "git.arvados.org/arvados.git/sdk/go/arvados"
+       "git.arvados.org/arvados.git/sdk/go/ctxlog"
+       "github.com/prometheus/client_golang/prometheus"
        check "gopkg.in/check.v1"
 )
 
@@ -18,30 +20,20 @@ var _ = check.Suite(&eventSourceSuite{})
 
 type eventSourceSuite struct{}
 
-func testDBConfig() pgConfig {
-       var railsDB struct {
-               Test struct {
-                       Database string
-                       Username string
-                       Password string
-                       Host     string
-               }
-       }
-       err := config.LoadFile(&railsDB, "../api/config/database.yml")
+func testDBConfig() arvados.PostgreSQLConnection {
+       cfg, err := arvados.GetConfig(arvados.DefaultConfigFile)
        if err != nil {
                panic(err)
        }
-       cfg := pgConfig{
-               "dbname":   railsDB.Test.Database,
-               "host":     railsDB.Test.Host,
-               "password": railsDB.Test.Password,
-               "user":     railsDB.Test.Username,
+       cc, err := cfg.GetCluster("zzzzz")
+       if err != nil {
+               panic(err)
        }
-       return cfg
+       return cc.PostgreSQL.Connection
 }
 
 func testDB() *sql.DB {
-       db, err := sql.Open("postgres", testDBConfig().ConnectionString())
+       db, err := sql.Open("postgres", testDBConfig().String())
        if err != nil {
                panic(err)
        }
@@ -52,8 +44,10 @@ func (*eventSourceSuite) TestEventSource(c *check.C) {
        cfg := testDBConfig()
        db := testDB()
        pges := &pgEventSource{
-               DataSource: cfg.ConnectionString(),
+               DataSource: cfg.String(),
                QueueSize:  4,
+               Logger:     ctxlog.TestLogger(c),
+               Reg:        prometheus.NewRegistry(),
        }
        go pges.Run()
        sinks := make([]eventSink, 18)