Size: a a a

2020 March 25

Т8

Т-34 85 in rust_offtopic
polunin.ai
извини, но ты меня уже заебал. попробуй подумать
Так и запишем "вброс без пруфов"
источник

Т8

Т-34 85 in rust_offtopic
Gymmasssorla
Переведу для тебя: "Юнит-тесты не нужны, когда есть хорошие типы"
Так это совсем другое дело
источник

AZ

Alex Zhukovsky in rust_offtopic
Gymmasssorla
Тестируешь приватный API - придётся, публичный - не придётся. Поэтому я если пишу юнит -тесты, то только на публичный API
обычно приватный апи является публичным для других апи, которые его и проверяют
источник

p

polunin.ai in rust_offtopic
Т-34 85
Так и запишем "вброс без пруфов"
ты описал все свои сообщения сейчас
источник

AZ

Alex Zhukovsky in rust_offtopic
собсна я в какой-то момент почти перестал писать internal
источник

AZ

Alex Zhukovsky in rust_offtopic
как только захотелось internal значит намешаны слои, и стоит вынести в другой модуль, где он будет уже публичый
источник

G

Gymmasssorla in rust_offtopic
Alex Zhukovsky
обычно приватный апи является публичным для других апи, которые его и проверяют
Поэтому я написал "pub в Rust"
источник

p

polunin.ai in rust_offtopic
Gymmasssorla
Тестируешь приватный API - придётся, публичный - не придётся. Поэтому я если пишу юнит -тесты, то только на публичный API
это уже интеграционные же
источник

p

polunin.ai in rust_offtopic
юнит это как раз приватный функционал
источник

G

Gymmasssorla in rust_offtopic
polunin.ai
это уже интеграционные же
Это немного другое
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Sergey Benzenko
Если у вас возникает потребность тестить приватные методы, то скорее всего ваш класс нарушает принцип единственной ответственности. В этом случае надо нужные приватные методы просто вынести в публичный при другого класса и протестировать их
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Nikita Tsukanov
вообще не факт
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Nikita Tsukanov
это может быть апишка, которая кроме этого класса никому не нужна
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Nikita Tsukanov
и вообще не должна светиться в публичном апи никак
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Nikita Tsukanov
а тестировать её надо
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Nikita Tsukanov
т. е. это может быть
public class Zalupa
{

    private static string GenerateZalupaIdentifier() {...}
}
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Nikita Tsukanov
оно по определению является деталью реализации залупы и наружу светиться никак не должно
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Nikita Tsukanov
при этом к реализации предъявляется набор требований, которые надо покрыть тестами
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Nikita Tsukanov
у тебя может быть какая-то деталь реализации, которую никому кроме класса не надо дёргать
источник

Т8

Т-34 85 in rust_offtopic
Переслано от Nikita Tsukanov
во избежание спагетти
источник