-
Notifications
You must be signed in to change notification settings - Fork 132
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
8aeede1
commit c254821
Showing
3 changed files
with
265 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,221 @@ | ||
cmake_minimum_required(VERSION 3.7) | ||
|
||
set(CMAKE_CXX_STANDARD 14) | ||
set(CMAKE_INCLUDE_CURRENT_DIR ON) | ||
set(CMAKE_AUTOMOC ON) | ||
set(CMAKE_AUTORCC ON) | ||
set(CMAKE_CXX_FLAGS "-g -Wall") | ||
|
||
# disable qt keywords, cause gio have signals member; | ||
ADD_DEFINITIONS(-DQT_NO_KEYWORDS) | ||
|
||
AUX_SOURCE_DIRECTORY("${CMAKE_CURRENT_BINARY_DIR}/tests" DIR_TESTS) | ||
|
||
SET(EXECUTABLE_OUTPUT_PATH "${CMAKE_CURRENT_BINARY_DIR}/bin/tests") | ||
|
||
set(DISPLAY_TEST_SRCS | ||
../src/frame/modules/display/iconbutton.h | ||
../src/frame/modules/display/monitorsettingdialog.h | ||
../src/frame/modules/display/displaywidget.h | ||
../src/frame/modules/display/brightnesspage.h | ||
../src/frame/modules/display/monitorindicator.h | ||
../src/frame/modules/display/displaymodel.h | ||
../src/frame/modules/display/miracastnodevicewidget.h | ||
../src/frame/modules/display/connectwidget.h | ||
../src/frame/modules/display/monitorsground.h | ||
../src/frame/modules/display/displaymodule.h | ||
../src/frame/modules/display/displayitemdelegate.h | ||
../src/frame/modules/display/displaycontrolpage.h | ||
../src/frame/modules/display/miracastsettings.h | ||
../src/frame/modules/display/settingsoptionitem.h | ||
../src/frame/modules/display/brightnessitem.h | ||
../src/frame/modules/display/miracastdevicemodel.h | ||
../src/frame/modules/display/displaycontrolmodel.h | ||
../src/frame/modules/display/miracastitem.h | ||
../src/frame/modules/display/scalingpage.h | ||
../src/frame/modules/display/miracastworker.h | ||
../src/frame/modules/display/monitorcontrolwidget.h | ||
../src/frame/modules/display/displayworker.h | ||
../src/frame/modules/display/miracastmodel.h | ||
../src/frame/modules/display/customconfigpage.h | ||
../src/frame/modules/display/rotatedialog.h | ||
../src/frame/modules/display/resolutiondetailpage.h | ||
../src/frame/modules/display/monitorproxywidget.h | ||
../src/frame/modules/display/settingslistwidget.h | ||
../src/frame/modules/display/monitor.h | ||
../src/frame/modules/display/recognizedialog.h | ||
../src/frame/modules/display/displaycontrolmodel.cpp | ||
../src/frame/modules/display/scalingpage.cpp | ||
../src/frame/modules/display/connectwidget.cpp | ||
../src/frame/modules/display/displaywidget.cpp | ||
../src/frame/modules/display/displayitemdelegate.cpp | ||
../src/frame/modules/display/brightnesspage.cpp | ||
../src/frame/modules/display/miracastsettings.cpp | ||
../src/frame/modules/display/miracastnodevicewidget.cpp | ||
../src/frame/modules/display/miracastdevicemodel.cpp | ||
../src/frame/modules/display/settingsoptionitem.cpp | ||
../src/frame/modules/display/rotatedialog.cpp | ||
../src/frame/modules/display/monitorindicator.cpp | ||
../src/frame/modules/display/monitorproxywidget.cpp | ||
../src/frame/modules/display/monitor.cpp | ||
../src/frame/modules/display/settingslistwidget.cpp | ||
../src/frame/modules/display/customconfigpage.cpp | ||
../src/frame/modules/display/monitorsground.cpp | ||
../src/frame/modules/display/displaymodule.cpp | ||
../src/frame/modules/display/monitorsettingdialog.cpp | ||
../src/frame/modules/display/miracastmodel.cpp | ||
../src/frame/modules/display/displaymodel.cpp | ||
../src/frame/modules/display/miracastworker.cpp | ||
../src/frame/modules/display/displaycontrolpage.cpp | ||
../src/frame/modules/display/iconbutton.cpp | ||
../src/frame/modules/display/brightnessitem.cpp | ||
../src/frame/modules/display/recognizedialog.cpp | ||
../src/frame/modules/display/miracastitem.cpp | ||
../src/frame/modules/display/monitorcontrolwidget.cpp | ||
../src/frame/modules/display/displayworker.cpp | ||
../src/frame/modules/display/resolutiondetailpage.cpp | ||
) | ||
|
||
set(WIDGETS_TEST_SRCS | ||
../src/frame | ||
../src/frame/widgets/settingsitem.h | ||
../src/frame/widgets/utils.h | ||
../src/frame/widgets/settingsheaderitem.h | ||
../src/frame/widgets/optionlistpage.h | ||
../src/frame/widgets/spinboxwidget.h | ||
../src/frame/widgets/settingshead.h | ||
../src/frame/widgets/lineeditwidget.h | ||
../src/frame/widgets/themeitempic.h | ||
../src/frame/widgets/dccslider.h | ||
../src/frame/widgets/basiclistmodel.h | ||
../src/frame/widgets/plantextitem.h | ||
../src/frame/widgets/separator.h | ||
../src/frame/widgets/dccsliderannotated.h | ||
../src/frame/widgets/filechoosewidget.h | ||
../src/frame/widgets/titledslideritem.h | ||
../src/frame/widgets/themeitem.h | ||
../src/frame/widgets/buttontuple.h | ||
../src/frame/widgets/titlevalueitem.h | ||
../src/frame/widgets/basiclistdelegate.h | ||
../src/frame/widgets/comboboxwidget.h | ||
../src/frame/widgets/searchinput.h | ||
../src/frame/widgets/nextbutton.h | ||
../src/frame/widgets/backbutton.h | ||
../src/frame/widgets/translucentframe.h | ||
../src/frame/widgets/contentwidget.h | ||
../src/frame/widgets/tipsitem.h | ||
../src/frame/widgets/basiclistview.h | ||
../src/frame/widgets/labels/smalllabel.h | ||
../src/frame/widgets/labels/largelabel.h | ||
../src/frame/widgets/labels/tipslabel.h | ||
../src/frame/widgets/labels/normallabel.h | ||
../src/frame/widgets/editablenextpagewidget.h | ||
../src/frame/widgets/timeoutdialog.h | ||
../src/frame/widgets/switchwidget.h | ||
../src/frame/widgets/settingsgroup.h | ||
../src/frame/widgets/passwdeditwidget.h | ||
../src/frame/widgets/nextpagewidget.h | ||
../src/frame/widgets/optionitem.h | ||
../src/frame/widgets/loadingindicator.h | ||
../src/frame/widgets/loadingnextpagewidget.h | ||
../src/frame/widgets/settingsitem.cpp | ||
../src/frame/widgets/settingsgroup.cpp | ||
../src/frame/widgets/titledslideritem.cpp | ||
../src/frame/widgets/passwdeditwidget.cpp | ||
../src/frame/widgets/plantextitem.cpp | ||
../src/frame/widgets/loadingnextpagewidget.cpp | ||
../src/frame/widgets/themeitempic.cpp | ||
../src/frame/widgets/timeoutdialog.cpp | ||
../src/frame/widgets/settingshead.cpp | ||
../src/frame/widgets/tipsitem.cpp | ||
../src/frame/widgets/nextpagewidget.cpp | ||
../src/frame/widgets/loadingindicator.cpp | ||
../src/frame/widgets/searchinput.cpp | ||
../src/frame/widgets/themeitem.cpp | ||
../src/frame/widgets/translucentframe.cpp | ||
../src/frame/widgets/dccslider.cpp | ||
../src/frame/widgets/separator.cpp | ||
../src/frame/widgets/filechoosewidget.cpp | ||
../src/frame/widgets/switchwidget.cpp | ||
../src/frame/widgets/basiclistdelegate.cpp | ||
../src/frame/widgets/backbutton.cpp | ||
../src/frame/widgets/settingsheaderitem.cpp | ||
../src/frame/widgets/nextbutton.cpp | ||
../src/frame/widgets/comboboxwidget.cpp | ||
../src/frame/widgets/optionitem.cpp | ||
../src/frame/widgets/editablenextpagewidget.cpp | ||
../src/frame/widgets/titlevalueitem.cpp | ||
../src/frame/widgets/basiclistmodel.cpp | ||
../src/frame/widgets/optionlistpage.cpp | ||
../src/frame/widgets/dccsliderannotated.cpp | ||
../src/frame/widgets/basiclistview.cpp | ||
../src/frame/widgets/spinboxwidget.cpp | ||
../src/frame/widgets/contentwidget.cpp | ||
../src/frame/widgets/buttontuple.cpp | ||
../src/frame/widgets/lineeditwidget.cpp | ||
) | ||
|
||
set(MODULES_TEST_SRCS | ||
../src/frame/modules/modulewidget.h | ||
../src/frame/modules/modulewidget.cpp | ||
../src/frame/modules/modulewidgetheader.h | ||
../src/frame/modules/modulewidgetheader.cpp | ||
) | ||
|
||
# Find the library | ||
find_package(PkgConfig REQUIRED) | ||
find_package(Qt5 COMPONENTS | ||
Core | ||
Widgets | ||
Concurrent | ||
X11Extras | ||
DBus | ||
Test | ||
REQUIRED) | ||
find_package(DtkWidget REQUIRED) | ||
|
||
pkg_check_modules(DFrameworkDBus REQUIRED dframeworkdbus) | ||
pkg_check_modules(QGSettings REQUIRED gsettings-qt) | ||
pkg_check_modules(XCB_EWMH REQUIRED xcb-ewmh x11 xext) | ||
|
||
set(TEST_SRCS | ||
display_test.h | ||
${DIR_TESTS} | ||
${DISPLAY_TEST_SRCS} | ||
${WIDGETS_TEST_SRCS} | ||
${MODULES_TEST_SRCS} | ||
${DtkWidget_INCLUDE_DIRS} | ||
${QGSettings_INCLUDE_DIRS} | ||
${XCB_EWMH_INCLUDE_DIRS} | ||
${DFrameworkDBus_INCLUDE_DIRS} | ||
) | ||
|
||
set(Qt_LIBS | ||
Qt5::Core | ||
Qt5::Gui | ||
Qt5::DBus | ||
Qt5::Widgets | ||
Qt5::X11Extras | ||
Qt5::Test | ||
) | ||
|
||
add_executable(unit-test | ||
${TEST_SRCS} | ||
${PROJECT_BINARY_DIR} | ||
) | ||
|
||
target_include_directories(unit-test PUBLIC | ||
${TEST_SRCS} | ||
${PROJECT_BINARY_DIR} | ||
) | ||
|
||
target_link_libraries(unit-test PRIVATE | ||
${Qt_LIBS} | ||
${DFrameworkDBus_LIBRARIES} | ||
${QGSettings_LIBRARIES} | ||
${DtkWidget_LIBRARIES} | ||
${XCB_EWMH_LIBRARIES} | ||
) | ||
|
||
add_test(NAME unit-test COMMAND "${CMAKE_CURRENT_BINARY_DIR}/bin/tests/unit-test") | ||
# set_tests_properties (unit-test PROPERTIES FAIL_REGULAR_EXPRESSION "failed") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
#ifndef DISPLAY_TEST_H | ||
#define DISPLAY_TEST_H | ||
|
||
#include <QMap> | ||
#include <QString> | ||
#include <QTest> | ||
|
||
#include "../src/frame/modules/display/displaywidget.h" | ||
|
||
class DisplayTest : public QObject { | ||
Q_OBJECT | ||
|
||
private Q_SLOTS: | ||
void testSliderValue_data() | ||
{ | ||
QTest::addColumn<float>("value"); | ||
QTest::addColumn<int>("result"); | ||
|
||
QMap<float, int> testMap{ { 1.0, 1 }, { 1.25, 2 }, { 1.5, 3 }, | ||
{ 1.75, 4 }, { 2.0, 5 }, { 2.25, 6 }, | ||
{ 2.5, 7 }, { 2.75, 8 }, { 3.0, 9 } }; | ||
|
||
for (auto it = testMap.constBegin(); it != testMap.constEnd(); ++it) { | ||
QTest::newRow("converToSlider") << it.key() << it.value(); | ||
} | ||
} | ||
void testSliderValue() | ||
{ | ||
QFETCH(float, value); | ||
QFETCH(int, result); | ||
|
||
using namespace dcc::display; | ||
|
||
QCOMPARE(DisplayWidget::convertToSlider(value), result); | ||
QCOMPARE(DisplayWidget::convertToScale(result), value); | ||
} | ||
}; | ||
|
||
QTEST_MAIN(DisplayTest) | ||
#endif // !DISPLAY_TEST_H |