add tests for parseConfig func

This commit is contained in:
Danny 2018-05-15 11:24:50 +02:00
parent 1f3dc51b26
commit 94db89fd27
4 changed files with 31 additions and 6 deletions

View File

@ -18,10 +18,13 @@ type Config struct {
func parseConfig(file string) *Config {
var cfg Config
var err error
err := godotenv.Load(file)
if err != nil && file != ".env" {
log.Fatalf("error parsing config file: %s", err)
if file != "" {
err = godotenv.Load(file)
if err != nil && file != ".env" {
log.Fatalf("error parsing config file: %s", err)
}
}
err = envconfig.Process("Fathom", &cfg)

21
cmd/fathom/config_test.go Normal file
View File

@ -0,0 +1,21 @@
package main
import (
"os"
"testing"
)
func TestParseConfig(t *testing.T) {
// empty config, should not fatal
cfg := parseConfig("")
if cfg.Secret == "" {
t.Errorf("expected secret, got empty string")
}
os.Setenv("FATHOM_DATABASE_DRIVER", "sqlite")
cfg = parseConfig("")
if cfg.Database.Driver != "sqlite3" {
t.Errorf("expected %#v, got %#v", "sqlite3", cfg.Database.Driver)
}
}

View File

@ -23,8 +23,9 @@ func register(c *cli.Context) error {
if err != nil {
log.Errorf("error creating user: %s", err)
} else {
log.Infof("created user %s", user.Email)
return err
}
log.Infof("created user %s", user.Email)
return nil
}

View File

@ -30,7 +30,7 @@ func server(c *cli.Context) error {
}
// start listening
log.Infof("Server listening on %s", addr)
log.Infof("server will now listening on %s", addr)
err := http.ListenAndServe(addr, h)
if err != nil {
log.Errorln(err)