Aktywne Wpisy
![Trabancik](https://wykop.pl/cdn/c0834752/b2133055dc3e2a72f06239d3d1bb2b6f04c215594077173ff0f00441f60e7f7d,q60.jpg)
Trabancik +14
Czas na sobotnią kontrolę tapet na telefonie, zapraszam serdecznie do wysyłania screenshotow.
Ja zaczynam
#glupiewykopowezabawy
Ja zaczynam
#glupiewykopowezabawy
![Trabancik - Czas na sobotnią kontrolę tapet na telefonie, zapraszam serdecznie do wys...](https://wykop.pl/cdn/c3201142/c54d30fecbc820dca88264a488553b3f8e612070c5581b56e66d54f18aada91c,w150.png?author=Trabancik&auth=55e73820804f3dc82f6705f13509b0c6)
źródło: IMG_3781 2
Pobierz![josb515](https://wykop.pl/cdn/c0834752/05efd7ff7601b964a1c85add91a33b7f5aa116cc61972e0ca68362b87d2b2067,q60.png)
josb515 +201
Rozpocząłem/am poważną naukę języka polskiego.
Dowiedziałem/am się, że w przeciwieństwie do angielskiego litera y jest samogłoską i zrozumiałem/am, dlaczego jest tak wiele zyk, cz, sz, rz. Nauczyłem/am się również, co oznaczają znaki ó, ś, ź, ń. Mam nadzieję, że za miesiąc będę mógł/mogła czytać mikroblogi na Wykopie bez użycia tłumacza.ᕙ(⇀‸↼‶)ᕗ
#nauka #porea #korea
Dowiedziałem/am się, że w przeciwieństwie do angielskiego litera y jest samogłoską i zrozumiałem/am, dlaczego jest tak wiele zyk, cz, sz, rz. Nauczyłem/am się również, co oznaczają znaki ó, ś, ź, ń. Mam nadzieję, że za miesiąc będę mógł/mogła czytać mikroblogi na Wykopie bez użycia tłumacza.ᕙ(⇀‸↼‶)ᕗ
#nauka #porea #korea
![josb515 - Rozpocząłem/am poważną naukę języka polskiego.
Dowiedziałem/am się, że w p...](https://wykop.pl/cdn/c3201142/7f97d449606667487ab9484c7dc2bb86fc3cb3c2cd3fd73fa2e244051cbea0a1,w150.jpg)
źródło: KakaoTalk_20240706_123509139
Pobierz
Ostatnio podczas pisania unit testów naszło mnie na refleksje i mam przeczucie, że spierniczyłem design projektu, ale do rzeczy. Stworzyłem strukturę gdzie foldery są podzielone na funkcjonalności, a w każdym takim folderze są pliki źródłowe i CMakeLists tworzący z nich bibliotekę, która linkowana jest do głównego targetu projektu. Załóżmy, że istnieje klasa MqttClient i klasa MqttConnection, która impelemntuje interfejs. W unit testach tworzę mocka tego interfejsu co jest oczywiste, ale pojawia się problem, żeby do głównego targetu testów dolinkować wcześniej wspomnianą bibliotekę z uwagi na to, że ona kompiluje implementację tego interfejsu czego w testach być nie powinno. Aktualnie rozwiązałem sprawę tak, że pod folderem testów tworzę bliźniaczy folder do tego z wcześniejszą biblioteką, ale bez konkretnej implementacji interfejsu. Mam wrażenie, że to rozwiązanie stwarza pewien narzut, a nie chciałbym do cmaków tych bibliotek dodawać logiki typu if (tests). Czy można to rozwiązać w lepszy sposób?
#cpp #programista15k #programowanie #cmake #unittest #gtest
Implementacja -> Interfejsy <- Testy
@Parseval: nie ma czegoś takiego, że "w testach tego być nie powinno". Testujesz tak jak uważasz, że jest stosownie. Testowanie interfejsu, który w 100%
Jeżeli testujesz samo Mqtt to imo testy każdego modułu powinny się znajdować wewnątrz modułu.
Jeżeli testujesz inny moduł, który korzysta z modułu Mqtt to przecież ten testowany moduł musi mieć podlinkowane Mqtt, więc testy również będą mogły z tego
@SpinOff Nie, mam jeden folder tests pod którym mam pliki z testami do modułów i foldery z cmakami, które są okrojone o źródła implementacji interfejsów.
@Tytanowy Nie do końca, chodzi głównie o niepotrzebne linkwoanie implementacji. Możliwe, że INTERFACE z cmake może pomóc, muszę poczytać. Dzięki!
@Parseval: trochę słabo, testy powinny być przy module. Dobrą metryką modularności jest
ile folderów muszę przenieść, żeby przenieść cały moduł do innego projektu
. Jak wszystko siedzi w jednym folderze/podfolderach odpowiedzialnych za dany moduł to jest idealnie