M module-gui/test/test-google/CMakeLists.txt => module-gui/test/test-google/CMakeLists.txt +15 -36
@@ 1,36 1,15 @@
-project(googletest-gui)
-
-include_directories(${gtest_SOURCE_DIR}/include ${gtest_SOURCE_DIR})
-include_directories(${gmock_SOURCE_DIR}/include ${gmock_SOURCE_DIR})
-
-add_executable(${PROJECT_NAME} EXCLUDE_FROM_ALL
- test-gui-listview.cpp
- test-gui-boxlayout.cpp
- test-gui-gridlayout.cpp
- test-gui-depthfirst-itemtree.cpp
- test-gui-visitor-call.cpp
- test-gui-dom-dump.cpp
- ../mock/TestListViewProvider.cpp
- )
-
-target_include_directories(${PROJECT_NAME}
- PUBLIC
- "${CMAKE_CURRENT_LIST_DIR}"
- "${CMAKE_SOURCE_DIR}/module-utils"
- "${CMAKE_SOURCE_DIR}/module-gui/test/"
- )
-
-target_link_directories(${PROJECT_NAME} PUBLIC "${PROJECT_LIB_DIRECTORY}")
-
-target_link_libraries(${PROJECT_NAME} PUBLIC module-utils module-gui)
-
-target_link_libraries(${PROJECT_NAME} PUBLIC gtest gtest_main)
-target_link_libraries(${PROJECT_NAME} PUBLIC gmock gmock_main)
-
-add_test(NAME ${PROJECT_NAME}
- COMMAND ${PROJECT_NAME}
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
- )
-
-add_dependencies(check ${PROJECT_NAME})
-add_dependencies(unittests ${PROJECT_NAME})
+add_gtest_executable(
+ NAME
+ gui
+ SRCS
+ test-gui-listview.cpp
+ test-gui-boxlayout.cpp
+ test-gui-gridlayout.cpp
+ test-gui-depthfirst-itemtree.cpp
+ test-gui-visitor-call.cpp
+ test-gui-dom-dump.cpp
+ ../mock/TestListViewProvider.cpp
+ LIBS
+ module-utils
+ module-gui
+)
A module-gui/test/test-google/TestBoxLayout.hpp => module-gui/test/test-google/TestBoxLayout.hpp +28 -0
@@ 0,0 1,28 @@
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
+
+#pragma once
+
+#include <gtest/gtest.h>
+
+#include <module-gui/gui/widgets/BoxLayout.hpp>
+
+class TestBoxLayout : public gui::BoxLayout
+{
+
+ public:
+ friend class BoxLayoutTesting;
+
+ FRIEND_TEST(BoxLayoutTesting, Constructor_Destructor_Test);
+ FRIEND_TEST(BoxLayoutTesting, Fill_Box_Test);
+ FRIEND_TEST(BoxLayoutTesting, Navigate_Test);
+ FRIEND_TEST(BoxLayoutTesting, Border_Callback_Test);
+ FRIEND_TEST(BoxLayoutTesting, Box_Alignment_Test);
+ FRIEND_TEST(BoxLayoutTesting, Box_Widget_Min_Max_Resize_Test);
+ FRIEND_TEST(BoxLayoutTesting, Box_Widgets_Alignment_Test);
+ FRIEND_TEST(BoxLayoutTesting, Box_Widgets_Alignment_Magrin_Test);
+ FRIEND_TEST(BoxLayoutTesting, Box_Margins_Test);
+
+ TestBoxLayout(Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h) : BoxLayout(parent, x, y, w, h){};
+ ~TestBoxLayout() = default;
+};
A module-gui/test/test-google/TestListView.hpp => module-gui/test/test-google/TestListView.hpp +43 -0
@@ 0,0 1,43 @@
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
+
+#pragma once
+
+#include <gtest/gtest.h>
+
+#include <gui/widgets/ListView.hpp>
+
+class TestListView : public gui::ListView
+{
+
+ public:
+ friend class ListViewTesting;
+ FRIEND_TEST(ListViewTesting, Constructor_Destructor_Test);
+ FRIEND_TEST(ListViewTesting, Fill_List_And_Item_Magin_Test);
+ FRIEND_TEST(ListViewTesting, Not_Equal_Items_Test);
+ FRIEND_TEST(ListViewTesting, List_Clear_Test);
+ FRIEND_TEST(ListViewTesting, Scroll_Test);
+ FRIEND_TEST(ListViewTesting, Navigate_Test);
+ FRIEND_TEST(ListViewTesting, Continuous_Type_Test);
+ FRIEND_TEST(ListViewTesting, Data_Deletion_Test);
+ FRIEND_TEST(ListViewTesting, Rebuild_Type_Test);
+
+ bool listBorderReached = false;
+
+ bool requestNextPage() override
+ {
+ listBorderReached = true;
+ return ListView::requestNextPage();
+ }
+
+ bool requestPreviousPage() override
+ {
+ listBorderReached = true;
+ return ListView::requestPreviousPage();
+ }
+
+ TestListView(
+ Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h, std::shared_ptr<gui::ListItemProvider> prov)
+ : ListView(parent, x, y, w, h, prov){};
+ ~TestListView() = default;
+};
M module-gui/test/test-google/test-gui-boxlayout.cpp => module-gui/test/test-google/test-gui-boxlayout.cpp +3 -20
@@ 2,8 2,10 @@
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "gtest/gtest.h"
+
+#include "TestBoxLayout.hpp"
+
#include <log.hpp>
-#include <module-gui/gui/widgets/BoxLayout.hpp>
#include <module-gui/test/mock/TestListViewProvider.hpp>
#include <gui/input/InputEvent.hpp>
@@ 33,25 35,6 @@ class TestItem : public gui::Rect
~TestItem() = default;
};
-class TestBoxLayout : public gui::BoxLayout
-{
-
- public:
- friend class BoxLayoutTesting;
- FRIEND_TEST(BoxLayoutTesting, Constructor_Destructor_Test);
- FRIEND_TEST(BoxLayoutTesting, Fill_Box_Test);
- FRIEND_TEST(BoxLayoutTesting, Navigate_Test);
- FRIEND_TEST(BoxLayoutTesting, Border_Callback_Test);
- FRIEND_TEST(BoxLayoutTesting, Box_Alignment_Test);
- FRIEND_TEST(BoxLayoutTesting, Box_Widget_Min_Max_Resize_Test);
- FRIEND_TEST(BoxLayoutTesting, Box_Widgets_Alignment_Test);
- FRIEND_TEST(BoxLayoutTesting, Box_Widgets_Alignment_Magrin_Test);
- FRIEND_TEST(BoxLayoutTesting, Box_Margins_Test);
-
- TestBoxLayout(Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h) : BoxLayout(parent, x, y, w, h){};
- ~TestBoxLayout() = default;
-};
-
class BoxLayoutTesting : public ::testing::Test
{
protected:
M module-gui/test/test-google/test-gui-listview.cpp => module-gui/test/test-google/test-gui-listview.cpp +5 -36
@@ 2,45 2,14 @@
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "gtest/gtest.h"
-#include <module-gui/gui/widgets/ListView.hpp>
-#include <log.hpp>
-#include <mock/TestListViewProvider.hpp>
-#include <gui/input/InputEvent.hpp>
-
-class TestListView : public gui::ListView
-{
- public:
- friend class ListViewTesting;
- FRIEND_TEST(ListViewTesting, Constructor_Destructor_Test);
- FRIEND_TEST(ListViewTesting, Fill_List_And_Item_Magin_Test);
- FRIEND_TEST(ListViewTesting, Not_Equal_Items_Test);
- FRIEND_TEST(ListViewTesting, List_Clear_Test);
- FRIEND_TEST(ListViewTesting, Scroll_Test);
- FRIEND_TEST(ListViewTesting, Navigate_Test);
- FRIEND_TEST(ListViewTesting, Continuous_Type_Test);
- FRIEND_TEST(ListViewTesting, Data_Deletion_Test);
- FRIEND_TEST(ListViewTesting, Rebuild_Type_Test);
-
- bool listBorderReached = false;
-
- bool requestNextPage() override
- {
- listBorderReached = true;
- return ListView::requestNextPage();
- }
+#include "TestListView.hpp"
- bool requestPreviousPage() override
- {
- listBorderReached = true;
- return ListView::requestPreviousPage();
- }
+#include <gui/input/InputEvent.hpp>
+#include <gui/widgets/ListView.hpp>
+#include <test/mock/TestListViewProvider.hpp>
- TestListView(
- Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h, std::shared_ptr<gui::ListItemProvider> prov)
- : ListView(parent, x, y, w, h, prov){};
- ~TestListView() = default;
-};
+#include <log.hpp>
class ListViewTesting : public ::testing::Test
{
M test/CMakeLists.txt => test/CMakeLists.txt +9 -1
@@ 74,11 74,19 @@ function(add_gtest_executable)
add_dependencies(unittests ${_TESTNAME})
add_dependencies(check ${_TESTNAME})
+ set(_TEST_LABELS "")
if(_TEST_ENTITY)
add_dependencies(unittests-${_TEST_ENTITY} ${_TESTNAME})
+ list(APPEND _TEST_LABELS ${_TEST_ENTITY})
endif()
- gtest_add_tests(${_TESTNAME} "" AUTO)
+ gtest_add_tests(
+ TARGET ${_TESTNAME}
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+ TEST_LIST _TEST_LIST
+ )
+
+ set_tests_properties(${_TEST_LIST} PROPERTIES LABELS ${_TEST_ENTITY})
endfunction()
function(add_catch2_executable)