Как тестировать private функции?

Middle
413 просмотров
AFK Offer AI

В Go "private" (unexported) функции видны внутри пакета. Если тест в том же пакете (package mypackage) — ты видишь все unexported функции и можешь тестировать напрямую. Если тест в отдельном пакете (package mypackage_test) — видишь только exported API. Оба подхода валидны: internal тесты для сложной логики, external для проверки публичного контракта. Если private функция настолько сложна, что нужен отдельный тест — может стоит сделать её exported или вынести в отдельный пакет. Не создавай export_test.go хаки без необходимости.

Следующий вопрос

Что такое bit manipulation?