diff --git a/qskinny.pro b/qskinny.pro index 7a41eef1..2443087c 100644 --- a/qskinny.pro +++ b/qskinny.pro @@ -7,6 +7,7 @@ SUBDIRS = \ qmlexport \ tools \ support \ + tests \ examples \ playground diff --git a/tests/checkboxes/checkboxes.pro b/tests/checkboxes/checkboxes.pro new file mode 100644 index 00000000..79376a0b --- /dev/null +++ b/tests/checkboxes/checkboxes.pro @@ -0,0 +1,11 @@ +CONFIG += qskexample + CONFIG += console + CONFIG += testcase + + QT += testlib + + HEADERS += \ + main.h + + SOURCES += \ + main.cpp diff --git a/tests/checkboxes/main.cpp b/tests/checkboxes/main.cpp new file mode 100644 index 00000000..2895344b --- /dev/null +++ b/tests/checkboxes/main.cpp @@ -0,0 +1,50 @@ +#include "main.h" + +#include + +void CheckBoxTests::init() { + root = new QskControl(); +} +void CheckBoxTests::cleanup() { + delete root; +} + +void CheckBoxTests::checkbox() { + auto t = new QskCheckBox( root ); + + QVERIFY( t->isCheckable() ); +} + +void CheckBoxTests::click() { + auto t = new QskCheckBox( root ); + + QVERIFY( t->isChecked() == false ); + t->click(); + QVERIFY( t->isChecked() ); +} + +void CheckBoxTests::toggle() { + auto t = new QskCheckBox( root ); + + QVERIFY( t->isChecked() == false ); + t->toggle(); + QVERIFY( t->isChecked() ); + + t->toggle(); + QVERIFY( t->isChecked() == false ); +} + +void CheckBoxTests::triState() { + auto t = new QskCheckBox( root ); + + QVERIFY( t->isChecked() == false ); + QVERIFY( t->isTriState() == false ); + + t->setCheckState( Qt::CheckState::PartiallyChecked ); + + QVERIFY( t->isChecked() == true ); + QVERIFY( t->isTriState() == true ); +} + +#include "moc_main.cpp" + diff --git a/tests/checkboxes/main.h b/tests/checkboxes/main.h new file mode 100644 index 00000000..b0efc3c3 --- /dev/null +++ b/tests/checkboxes/main.h @@ -0,0 +1,23 @@ +#pragma once + +#include +#include + +class QskControl; +class CheckBoxTests : public QObject +{ + Q_OBJECT + + QskControl * root; + private Q_SLOTS: + void init(); + void cleanup(); + + void checkbox(); + void click(); + void toggle(); + void triState(); +}; + +QTEST_MAIN(CheckBoxTests) + diff --git a/tests/tests.pro b/tests/tests.pro new file mode 100644 index 00000000..60e10ea4 --- /dev/null +++ b/tests/tests.pro @@ -0,0 +1,5 @@ +TEMPLATE = subdirs + +SUBDIRS += \ + checkboxes +