Files
Lumberjack-Go-Backend/test_test.go

63 lines
1.2 KiB
Go

package main
import (
"log"
"net/http"
"net/http/httptest"
"os"
"testing"
"github.com/joho/godotenv"
)
var a App
func TestMain(m *testing.M) {
a = App{}
err := godotenv.Load()
if err != nil {
log.Fatal("Error loading .env file")
}
a.Initialize(
os.Getenv("TEST_DB_USERNAME"),
os.Getenv("TEST_DB_PASSWORD"),
os.Getenv("TEST_DB_NAME"))
ensureConfigTableExists(a.DB)
ensureDataTypeTableExists(a.DB)
ensureDeviceTypeTableExists(a.DB)
ensureDeviceTableExists(a.DB)
ensureFileTableExists(a.DB)
ensureTagClassTableExists(a.DB)
ensureTagTableExists(a.DB)
ensureTagValueTableExists(a.DB)
ensureLatestTagValueTableExists(a.DB)
code := m.Run()
clearConfigTable()
clearDataTypeTable()
clearDeviceTypeTable()
clearDeviceTable()
clearFileTable()
clearTagClassTable()
clearTagTable()
clearTagValueTable()
clearLatestTagValueTable()
os.Exit(code)
}
func executeRequest(req *http.Request) *httptest.ResponseRecorder {
rr := httptest.NewRecorder()
a.Router.ServeHTTP(rr, req)
return rr
}
func checkResponseCode(t *testing.T, expected, actual int) {
if expected != actual {
t.Errorf("Expected response code %d. Got %d\n", expected, actual)
}
}