Я немного растерялся, когда дело доходит до тестирования в Go.Я читал, что в некоторых случаях абстрагирование от интерфейсов должно быть идеальным способом, в других - я вижу TestTables.Я не слишком уверен, когда применять любой из них.Например, как можно протестировать приведенную ниже функцию.
type User{
Name string `json:"name"`
IsMarried bool `json:"isMarried"`
Nicknames []string `json:"nicknames"`
}
func (u *User) Create() (*http.Response, error) {
data, err := json.Marshal(u)
if err != nil {
return nil, err
}
urll := EndpointBase+"/users"
req, err := http.NewRequest(http.MethodPost, urll, bytes.NewReader(data))
if err != nil {
return nil, err
}
resp, err := auth.Session.Client.Do(req)
if err != nil {
return nil, err
}
return resp, nil
}