diff options
author | Niall Sheridan <nsheridan@gmail.com> | 2017-01-08 19:39:51 +0000 |
---|---|---|
committer | Niall Sheridan <nsheridan@gmail.com> | 2017-01-08 22:00:03 +0000 |
commit | 6dfe350cb5eefde3a99374d14c083d1906717ddd (patch) | |
tree | f064f18885b4c314845756fec2021980c2fb6dd9 /server | |
parent | 9aeb1445549ec9a5b890f6df9bcf2952ef94ee03 (diff) |
Remove dbinit and use sql/js seed files
Diffstat (limited to 'server')
-rw-r--r-- | server/store/store_test.go | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/server/store/store_test.go b/server/store/store_test.go index dbe2d95..281a614 100644 --- a/server/store/store_test.go +++ b/server/store/store_test.go @@ -3,9 +3,11 @@ package store import ( "crypto/rand" "crypto/rsa" + "database/sql" "io/ioutil" "os" - "os/exec" + "os/user" + "strings" "testing" "time" @@ -15,10 +17,6 @@ import ( "golang.org/x/crypto/ssh" ) -var ( - dbConfig = map[string]string{"username": "user", "password": "passwd", "address": "localhost"} -) - func TestParseCertificate(t *testing.T) { t.Parallel() a := assert.New(t) @@ -93,8 +91,8 @@ func TestMySQLStore(t *testing.T) { if os.Getenv("MYSQL_TEST") == "" { t.Skip("No MYSQL_TEST environment variable") } - dbConfig["type"] = "mysql" - db, err := NewSQLStore(dbConfig) + u, _ := user.Current() + db, err := NewSQLStore(map[string]string{"type": "mysql", "username": u.Username}) if err != nil { t.Error(err) } @@ -106,8 +104,7 @@ func TestMongoStore(t *testing.T) { if os.Getenv("MONGO_TEST") == "" { t.Skip("No MONGO_TEST environment variable") } - dbConfig["type"] = "mongo" - db, err := NewMongoStore(dbConfig) + db, err := NewMongoStore(map[string]string{"type": "mongo"}) if err != nil { t.Error(err) } @@ -121,11 +118,21 @@ func TestSQLiteStore(t *testing.T) { t.Error(err) } defer os.Remove(f.Name()) - // This is so jank. - args := []string{"run", "../../cmd/dbinit/dbinit.go", "-db_type", "sqlite", "-db_path", f.Name()} - if err := exec.Command("go", args...).Run(); err != nil { + + seed, err := ioutil.ReadFile("../../db/seed.sql") + if err != nil { t.Error(err) } + stmts := strings.Split(string(seed), ";") + d, _ := sql.Open("sqlite3", f.Name()) + for _, stmt := range stmts { + if !strings.Contains(stmt, "CREATE TABLE") { + continue + } + d.Exec(stmt) + } + d.Close() + config := map[string]string{"type": "sqlite", "filename": f.Name()} db, err := NewSQLStore(config) if err != nil { |