Изучаю тут Go по
вот этому курсу и возникла у меня проблема:
Есть функция TestMain
func TestMain(m *testing.M) {
databaseURL := os.Getenv("DATABASE_URL")
if databaseURL == "" {
databaseURL = "host=localhost dbname=restapi_test user=uzr password=secret"
}
fmt.Println("1: DB URL: ===>", databaseURL)
os.Exit(m.Run())
}
и функция тестирования
func TestUserRepository_Create(t *testing.T) {
//databaseURL = "host=localhost dbname=restapi_test user=uzr password=secret"
fmt.Println("2: DB URL: ===>", databaseURL)
s, teardown := store.TestStore(t, databaseURL)
defer teardown("users")
u, err := s.User().Create(&model.User{Email: "user@example.org"})
assert.NoError(t, err)
assert.NotNil(t, u)
}
Запуск теста выдает вот такой вывод (при определении значения databaseURL в самом тесте все Ок)
1: DB URL: ===> host=localhost dbname=restapi_test user=uzr password=secret
2: DB URL: ===>
2020/06/22 09:49:35 ===>
--- FAIL: TestUserRepository_Create (0.02s)
userrepository_test.go:15: pq: password authentication failed for user "yermek"
FAIL
FAIL github.com/yermek/http-rest-api/internal/app/store 0.039s
FAIL
Собственно, вопрос в сабже -- почему же значение databaseURL не передается в тест?