move from test init()s to TestMain
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"net/http"
|
||||
"net/http/httptest"
|
||||
"net/url"
|
||||
"os"
|
||||
"path"
|
||||
"regexp"
|
||||
"strings"
|
||||
@@ -25,16 +26,6 @@ var (
|
||||
testController *Controller
|
||||
)
|
||||
|
||||
func init() {
|
||||
db, err := db.New(testDBPath)
|
||||
if err != nil {
|
||||
log.Fatalf("error opening database: %v\n", err)
|
||||
}
|
||||
testController = &Controller{
|
||||
Controller: &ctrlbase.Controller{DB: db},
|
||||
}
|
||||
}
|
||||
|
||||
type queryCase struct {
|
||||
params url.Values
|
||||
expectPath string
|
||||
@@ -86,3 +77,14 @@ func runQueryCases(t *testing.T, h handlerSubsonic, cases []*queryCase) {
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestMain(m *testing.M) {
|
||||
db, err := db.New(testDBPath)
|
||||
if err != nil {
|
||||
log.Fatalf("error opening database: %v\n", err)
|
||||
}
|
||||
testController = &Controller{
|
||||
Controller: &ctrlbase.Controller{DB: db},
|
||||
}
|
||||
os.Exit(m.Run())
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package db
|
||||
import (
|
||||
"log"
|
||||
"math/rand"
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
_ "github.com/jinzhu/gorm/dialects/sqlite"
|
||||
@@ -10,14 +11,6 @@ import (
|
||||
|
||||
var testDB *DB
|
||||
|
||||
func init() {
|
||||
var err error
|
||||
testDB, err = NewMock()
|
||||
if err != nil {
|
||||
log.Fatalf("error opening database: %v\n", err)
|
||||
}
|
||||
}
|
||||
|
||||
func randKey() string {
|
||||
letters := []rune("abcdef0123456789")
|
||||
b := make([]rune, 16)
|
||||
@@ -44,3 +37,12 @@ func TestGetSetting(t *testing.T) {
|
||||
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())
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package scanner
|
||||
import (
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
_ "github.com/jinzhu/gorm/dialects/sqlite"
|
||||
@@ -12,17 +13,6 @@ import (
|
||||
|
||||
var testScanner *Scanner
|
||||
|
||||
func init() {
|
||||
db, err := db.NewMock()
|
||||
if err != nil {
|
||||
log.Fatalf("error opening database: %v\n", err)
|
||||
}
|
||||
// benchmarks aren't real code are they? >:)
|
||||
// here is an absolute path to my music directory
|
||||
testScanner = New("/home/senan/music", db)
|
||||
log.SetOutput(ioutil.Discard)
|
||||
}
|
||||
|
||||
func resetTables(db *db.DB) {
|
||||
tx := db.Begin()
|
||||
defer tx.Commit()
|
||||
@@ -54,6 +44,18 @@ func BenchmarkScanIncremental(b *testing.B) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestMain(m *testing.M) {
|
||||
db, err := db.NewMock()
|
||||
if err != nil {
|
||||
log.Fatalf("error opening database: %v\n", err)
|
||||
}
|
||||
// benchmarks aren't real code are they? >:)
|
||||
// here is an absolute path to my music directory
|
||||
testScanner = New("/home/senan/music", db)
|
||||
log.SetOutput(ioutil.Discard)
|
||||
os.Exit(m.Run())
|
||||
}
|
||||
|
||||
// RESULTS fresh
|
||||
// 20 times / 1.436
|
||||
// 20 times / 1.39
|
||||
|
||||
Reference in New Issue
Block a user