diff options
author | kali kaneko (leap communications) <kali@leap.se> | 2020-06-18 20:42:29 +0200 |
---|---|---|
committer | kali kaneko (leap communications) <kali@leap.se> | 2020-06-26 12:17:30 +0200 |
commit | cdb42f0d6b47a60ceb647e3ac6a6ce66352dbae4 (patch) | |
tree | 40f76de30181eb1036d44516e5dd05488c8c31dc /tests/test_ui.cpp | |
parent | 4de5748e25678dce9c5a344afc5fd40508c0860f (diff) |
[test] minimal qml tests
just a minimal boilerplate. the idea is to import the qml files and
assert that the states/widgets change accordingly if we mock the backend
status.
- Closes: #300
Diffstat (limited to 'tests/test_ui.cpp')
-rw-r--r-- | tests/test_ui.cpp | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/tests/test_ui.cpp b/tests/test_ui.cpp new file mode 100644 index 0000000..f9f960a --- /dev/null +++ b/tests/test_ui.cpp @@ -0,0 +1,52 @@ +// test_ui.cpp +#include <QtQuickTest> +#include <QQmlEngine> +#include <QQmlContext> + +#include "../gui/qjsonmodel.h" +#include "../lib/libgoshim.h" + +class Helper : public QObject +{ + Q_OBJECT + +public: + explicit Helper(QObject *parent = 0); + +public slots: + Q_INVOKABLE QString refreshContext(); +}; + +Helper::Helper(QObject *parent) : QObject(parent) +{ +} + +Q_INVOKABLE QString Helper::refreshContext() +{ + return QString(RefreshContext()); +} + +class Setup : public QObject +{ + Q_OBJECT + +public: + Setup() {} + +public slots: + void qmlEngineAvailable(QQmlEngine *engine) + { + QQmlContext *ctx = engine->rootContext(); + QJsonModel *model = new QJsonModel; + Helper *helper = new Helper(this); + + InitializeTestBitmaskContext(); + + ctx->setContextProperty("jsonModel", model); + ctx->setContextProperty("helper", helper); + } +}; + +QUICK_TEST_MAIN_WITH_SETUP(ui, Setup) + +#include "test_ui.moc" |