Proof-of-concept QML test
WIP, do not review yet
This commit is contained in:
61
autotests/qmltest.cpp
Normal file
61
autotests/qmltest.cpp
Normal file
@@ -0,0 +1,61 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2020 Arjen Hiemstra <ahiemstra@heimr.nl>
|
||||
*
|
||||
* SPDX-License-Identifier: LGPL-2.0-or-later
|
||||
*/
|
||||
|
||||
#include <KLocalizedContext>
|
||||
#include <KLocalizedString>
|
||||
#include <QNetworkDiskCache>
|
||||
#include <QQmlContext>
|
||||
#include <QQmlEngine>
|
||||
#include <QQmlNetworkAccessManagerFactory>
|
||||
#include <QStandardPaths>
|
||||
#include <Quotient/networkaccessmanager.h>
|
||||
#include <quicktest.h>
|
||||
|
||||
#include "accountmanager.h"
|
||||
#include "server.h"
|
||||
|
||||
using namespace Quotient;
|
||||
using namespace Qt::StringLiterals;
|
||||
|
||||
class NetworkAccessManagerFactory : public QQmlNetworkAccessManagerFactory
|
||||
{
|
||||
QNetworkAccessManager *create(QObject *) override
|
||||
{
|
||||
auto nam = NetworkAccessManager::instance();
|
||||
QObject::connect(nam, &QNetworkAccessManager::sslErrors, nam, [](auto reply, auto errors) {
|
||||
reply->ignoreSslErrors(errors);
|
||||
});
|
||||
nam->setRedirectPolicy(QNetworkRequest::NoLessSafeRedirectPolicy);
|
||||
|
||||
return nam;
|
||||
}
|
||||
};
|
||||
|
||||
class Setup : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
Setup() = default;
|
||||
|
||||
Server server;
|
||||
|
||||
public Q_SLOTS:
|
||||
void qmlEngineAvailable(QQmlEngine *engine)
|
||||
{
|
||||
KLocalizedString::setApplicationDomain(QByteArrayLiteral("neochat"));
|
||||
|
||||
engine->setNetworkAccessManagerFactory(new NetworkAccessManagerFactory());
|
||||
engine->rootContext()->setContextObject(new KLocalizedContext(engine));
|
||||
|
||||
server.start();
|
||||
Q_UNUSED(new AccountManager(true));
|
||||
}
|
||||
};
|
||||
|
||||
QUICK_TEST_MAIN_WITH_SETUP(NeoChat, Setup)
|
||||
|
||||
#include "qmltest.moc"
|
||||
Reference in New Issue
Block a user