package database import ( "testing" ) // Tests are not guaranteed to be sequential func setupState() (Database, error) { db := DbConnect(":memory:") err := db.Migrate("../../migrations") if err != nil { return nil, err } return db, nil } func TestDbConnect(t *testing.T) { db := DbConnect(":memory:") _ = db } func TestDbAddUser(t *testing.T) { db, err := setupState() if err != nil { t.Error("setupState failed:", err) } err = db.AddUser("test", "password") if err != nil { t.Error("AddUser failed:", err) } } func TestDbGetUserId(t *testing.T) { db, err := setupState() if err != nil { t.Error("setupState failed:", err) } if db.AddUser("test", "password") != nil { t.Error("AddUser failed") } var id int id, err = db.GetUserId("test") if err != nil { t.Error("GetUserId failed:", err) } if id != 1 { t.Error("GetUserId failed: expected 1, got", id) } } func TestDbAddProject(t *testing.T) { db, err := setupState() if err != nil { t.Error("setupState failed:", err) } err = db.AddProject("test", "description", "test") if err != nil { t.Error("AddProject failed:", err) } } func TestDbRemoveUser(t *testing.T) { db, err := setupState() if err != nil { t.Error("setupState failed:", err) } err = db.RemoveUser("test") if err != nil { t.Error("RemoveUser failed:", err) } }