Шесть копий теста валидации телефона отличаются одной строкой
Для функции ValidatePhone написаны шесть тестов: TestValidPhone, TestPhoneWithoutPlus, TestEmptyPhone и так далее. Тела одинаковые, различаются входная строка и ожидаемый результат. При падении одного отчёт неудобно читать.
Какой подход принят в Go для таких случаев?
- Табличный тест: срез случаев и t.Run для каждого
- Один тест с циклом и t.Fatal на первой ошибке
- Отдельный пакет тестов на каждый случай
- Генерация случайных телефонов в цикле
