Closed SylwesterZarebski closed 1 year ago
Warunek Contains('Test') jest od początku istnienia SDK.
W przypadku bibliotek z Test w nazwie zawsze można jawnie w takim projekcie ustawić <IsTestProject>false</IsTestProject>
, wtedy konwencja nie będzie miała znaczenia, bo Condition wyleci na pierwszym warunku.
Np u nas w repozytorium projekty testowe kończą się na Test, natomiast projekt wspomagający testowanie Soneta.Test nie jest projektem testowym i ma to jawnie ustawione.
Biorąc powyższe pod uwagę proponuję, aby raczej iść w kierunku aktualizacji dokumentacji do tego co jest w Sdk,props
Więc poza poprawieniem dokumentacji można by zrobić EndsWith
. Być może też warto by testować nie samą frazę Test
, a .Test
(z kropką). W komplecie by było EndsWith('.Test')
.
Nadal dokumentacja https://dok.enova365.pl/SELF/35573 błędnie opisuje:
Projekt testowy, który w swojej nazwie będzie zawierał słowo "Tests"
Dokumentacja i wykrywanie projektu testowego są niezgodne ze sobą: Dokumentacja opisuje
Zaś w
Sdk.props
jest:Tests != Test
Moim zdaniem powinno się zmodyfikować wykrywanie na
Contains('Tests')
, bo fraza Test jest zbyt ogólną i wiele projektów miewa Test w nazwie projektu, ale nie jest projektem testowym.PS. Wydaje się, że najlepszą konstrukcją powinno być
EndsWith('Tests')
, zamiastContains()
.