diff options
| author | Felix Morgner <felix.morgner@gmail.com> | 2024-07-25 08:53:59 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@gmail.com> | 2024-07-25 08:53:59 +0200 |
| commit | 02a030a95b27034eedc151488a014950595510de (patch) | |
| tree | 4a66c7321a32590d370a58f8729db2e0b2b2ddd8 /ui | |
| parent | e05d980091724358f689598643b0f17ec671d495 (diff) | |
| download | turns-02a030a95b27034eedc151488a014950595510de.tar.xz turns-02a030a95b27034eedc151488a014950595510de.zip | |
turns: dissolve test_support library
Diffstat (limited to 'ui')
| -rw-r--r-- | ui/CMakeLists.txt | 11 | ||||
| -rw-r--r-- | ui/tests/gtk_test_init.cpp | 37 |
2 files changed, 46 insertions, 2 deletions
diff --git a/ui/CMakeLists.txt b/ui/CMakeLists.txt index 2532059..fa4bc02 100644 --- a/ui/CMakeLists.txt +++ b/ui/CMakeLists.txt @@ -38,20 +38,27 @@ add_subdirectory("res") # Tests +get_target_property(TRANSLATIONS_BINARY_DIR "lang" BINARY_DIR) + add_executable("ui-tests" + "tests/gtk_test_init.cpp" + "tests/widgets/participant_row.cpp" "tests/windows/participant_editor.cpp" "tests/windows/resources.cpp" "tests/windows/tracker.cpp" ) +target_compile_definitions("ui-tests" PUBLIC + "TESTLOCALEDIR=\"${TRANSLATIONS_BINARY_DIR}\"" +) + target_link_libraries("ui-tests" PRIVATE - "Catch2::Catch2" + "Catch2::Catch2WithMain" "$<$<CXX_COMPILER_ID:GNU,Clang>:-Wl,--whole-archive>" "turns::ui" "$<$<CXX_COMPILER_ID:GNU,Clang>:-Wl,--no-whole-archive>" - "turns::gtk-test-main" ) target_link_options("ui-tests" PRIVATE diff --git a/ui/tests/gtk_test_init.cpp b/ui/tests/gtk_test_init.cpp new file mode 100644 index 0000000..734de2f --- /dev/null +++ b/ui/tests/gtk_test_init.cpp @@ -0,0 +1,37 @@ +#include "turns/core/init.hpp" +#include "turns/ui/init.hpp" + +#include <catch2/reporters/catch_reporter_event_listener.hpp> +#include <catch2/reporters/catch_reporter_registrars.hpp> + +#include <glibmm/i18n.h> + +#include <gtkmm/init.h> + +#include <adwaita.h> + +namespace turns::ui::tests +{ + + struct gtk_test_init : Catch::EventListenerBase + { + using Catch::EventListenerBase::EventListenerBase; + + auto testRunStarting(Catch::TestRunInfo const &) -> void override + { + setlocale(LC_ALL, ""); + bindtextdomain("turns", TESTLOCALEDIR); + bind_textdomain_codeset("turns", "UTF-8"); + textdomain("turns"); + + Gtk::init_gtkmm_internals(); + adw_init(); + + core::register_types(); + ui::register_types(); + } + }; + + CATCH_REGISTER_LISTENER(gtk_test_init); + +} // namespace turns::ui::tests
\ No newline at end of file |
