enable start without test data, improve error handling #44

This commit is contained in:
Sonja Happ 2021-04-30 14:19:10 +02:00
parent 3098b773b6
commit e070fbdbd0
2 changed files with 16 additions and 12 deletions

View file

@ -137,14 +137,17 @@ func ReadTestDataFromJson(path string) error {
// AddTestData Uses API endpoints to add test data to the backend; All endpoints have to be registered before invoking this function. // AddTestData Uses API endpoints to add test data to the backend; All endpoints have to be registered before invoking this function.
func AddTestData(cfg *config.Config, router *gin.Engine) (*bytes.Buffer, error) { func AddTestData(cfg *config.Config, router *gin.Engine) (*bytes.Buffer, error) {
adminPW, err := cfg.String("admin.pass") adminPW, errPW := cfg.String("admin.pass")
if err != nil { adminName, errName := cfg.String("admin.user")
log.Println("WARNING: cannot add test data: ", err) if errPW != nil || errName != nil {
return nil, nil if errName != nil {
} log.Println("WARNING:", errName)
adminName, err := cfg.String("admin.user") }
if err != nil { if errPW != nil {
log.Println("WARNING: cannot add test data: ", err) log.Println("WARNING:", errPW)
}
log.Println("WARNING: cannot add test data because of missing admin config, continue without it")
return nil, nil return nil, nil
} }

View file

@ -37,18 +37,19 @@ func addData(router *gin.Engine, cfg *config.Config) error {
testDataPath, err := cfg.String("test.datapath") testDataPath, err := cfg.String("test.datapath")
if err != nil { if err != nil {
return err // if param is missing, no test data will be added
return nil
} }
err = routes.ReadTestDataFromJson(testDataPath) err = routes.ReadTestDataFromJson(testDataPath)
if err != nil { if err != nil {
log.Println("testdata could not be read from json file") log.Println("WARNING: test data cannot not be read from file, continue without it: ", err)
return err return nil
} }
resp, err := routes.AddTestData(cfg, router) resp, err := routes.AddTestData(cfg, router)
if err != nil { if err != nil {
fmt.Println("error: testdata could not be added to DB:", err.Error(), "Response body: ", resp) fmt.Println("ERROR: test data could not be added to DB:", err.Error(), "Response body: ", resp)
return err return err
} }