Files
gonic/server/db/db_test.go
2020-05-07 01:43:47 +01:00

49 lines
876 B
Go

package db
import (
"log"
"math/rand"
"os"
"testing"
_ "github.com/jinzhu/gorm/dialects/sqlite"
)
var testDB *DB
func randKey() string {
letters := []rune("abcdef0123456789")
b := make([]rune, 16)
for i := range b {
b[i] = letters[rand.Intn(len(letters))]
}
return string(b)
}
func TestGetSetting(t *testing.T) {
key := randKey()
// new key
expected := "hello"
testDB.SetSetting(key, expected)
actual := testDB.GetSetting(key)
if actual != expected {
t.Errorf("expected %q, got %q", expected, actual)
}
// existing key
expected = "howdy"
testDB.SetSetting(key, expected)
actual = testDB.GetSetting(key)
if actual != expected {
t.Errorf("expected %q, got %q", expected, actual)
}
}
func TestMain(m *testing.M) {
var err error
testDB, err = NewMock()
if err != nil {
log.Fatalf("error opening database: %v\n", err)
}
os.Exit(m.Run())
}