Утверждение в нетестовой функции в Go

Я хочу использовать утверждение в функции, но это не тестовая функция. Это обычная функция, и я хочу использовать что-то вроде assert.Equal(param1, some_constant). Я наткнулся на следующий пакет: https://godoc.org/github.com/stretchr/testify/assert Однако оказывается, что для этого также требуется пакет testing, а также передача функции параметра типа *testing.T. Есть ли какая-либо другая функция assert в Go, где я могу напрямую вызвать функцию assert, фактически не полагаясь на какой-либо другой тестовый пакет или параметр?


person typos    schedule 14.08.2017    source источник
comment
Если вы действительно этого хотите: почему бы не написать собственную функцию assert? Зачем полагаться на внешние пакеты?   -  person Volker    schedule 15.08.2017


Ответы (1)


Go не предоставляет утверждений. В FAQ по языку от команды Go есть раздел: https://golang.org/doc/faq#assertions Если вам это действительно нравится, вы можете просто написать обычную функцию, которая принимает два значения и что-то делает, если они оцениваются как равные или не равные, как вы хотите.

person Arminius    schedule 14.08.2017