Как обсуждалось в этом ответе , я написал код для проверки нарушения уникального ключа:
if err, ok := err.(*pq.Error); ok {
if err.Code.Name() == "unique_violation" {
fail(w, http.StatusBadRequest, 0, "Item already exists")
return
}
}
Для написания юнит-тестов мне нужно издеваться над этой ошибкой. Я написал макет для ошибки, как это:
return pq.Error{Code: "unique_violation"}
Но это не соответствует коду. Как мне издеваться над pq.Error
?