early-access version 3088

This commit is contained in:
pineappleEA
2022-11-05 15:35:56 +01:00
parent 4e4fc25ce3
commit b601909c6d
35519 changed files with 5996896 additions and 860 deletions

View File

@@ -0,0 +1 @@
bin

View File

@@ -0,0 +1,7 @@
#include <iostream>
int main()
{
// dummy file to test initialization of qt
return 0;
}

View File

@@ -0,0 +1,118 @@
# (c) Copyright Juergen Hunold 2008
# Use, modification, and distribution are subject to the
# Boost Software License, Version 1.0. (See accompanying file
# LICENSE.txt or copy at https://www.bfgroup.xyz/b2/LICENSE.txt)
import qt5 ;
import testing ;
import cast ;
path-constant CWD : . ;
if ! [ qt5.initialized ]
{
# assuming qt5 from system
using qt5 : /usr/ ;
project qttest-initialization : ;
alias qt-tests-initialization :
[ run initialization.cpp /qt5//QtCore ]
: # requirements
: # default-build
: # usage-requirements
;
}
if [ qt5.initialized ]
{
use-project /boost : ../../../.. ;
project qttest
: requirements
<library>/boost/test//boost_unit_test_framework
;
alias qt-tests :
# Check for explicit libraries, <use>/qt should not link any lib
[ link-fail qtcorefail.cpp : <use>/qt ]
[ run qtcore.cpp /qt5//QtCore ]
[ run qtsql.cpp /qt5//QtSql ]
[ run qtxml.cpp /qt5//QtXml ]
[ run qtnetwork.cpp /qt5//QtNetwork ]
[ run qtscript.cpp /qt5//QtScript ]
[ run qtscripttools.cpp /qt5//QtScriptTools ]
[ run qtxmlpatterns.cpp /qt5//QtXmlPatterns ]
[ run qtpositioning.cpp /qt5//QtPositioning ]
# ToDo: runable example code
[ link qtsvg.cpp /qt5//QtSvg ]
[ link qtwidgets.cpp /qt5//QtWidgets ]
# Multimedia toolkits.
[ link qtwebkit.cpp /qt5//QtWebKit ]
[ link qtwebkitwidgets.cpp /qt5//QtWebKitWidgets ]
[ link qtmultimedia.cpp /qt5//QtMultimedia ]
# QtQuick version1
[ link qtdeclarative.cpp /qt5//QtDeclarative ]
# QtQuick version2
[ run qtquick.cpp /qt5//QtQuick : "--" -platform offscreen : $(CWD)/qtquick.qml ]
[ run qtwebengine.cpp /qt5//QtWebEngine ]
[ run qtwebenginewidgets.cpp /qt5//QtWebEngineWidgets ]
# QtSerialPort
[ run qtserialport.cpp /qt5//QtSerialPort ]
[ run qtlocation.cpp /qt5//QtLocation ]
[ run qtwebchannel.cpp /qt5//QtWebChannel ]
[ run qtwebsockets.cpp /qt5//QtWebSockets ]
[ run qtwebview.cpp /qt5//QtWebView ]
[ run qtpurchasing.cpp /qt5//QtPurchasing ]
[ run qtcharts.cpp /qt5//QtCharts ]
[ run qt3dcore.cpp /qt5//Qt3DCore ]
[ run qt3drender.cpp /qt5//Qt3DRender ]
[ run qt3dinput.cpp /qt5//Qt3DInput ]
[ run qt3dlogic.cpp /qt5//Qt3DLogic ]
[ run qtdatavisualization.cpp /qt5//QtDataVisualization ]
# Qt Connectivity
[ run qtbluetooth.cpp /qt5//QtBluetooth ]
[ run qtnfc.cpp /qt5//QtNfc ]
[ run qtgamepad.cpp /qt5//QtGamepad ]
[ run qtscxml.cpp /qt5//QtScxml ]
[ run qtserialbus.cpp /qt5//QtSerialBus ]
# Help systems.
[ link qthelp.cpp /qt5//QtHelp ]
# Testing using QtTest. Simple sample
# ToDo: better support for "automoc" aka '#include "qttest.moc"'
[ run qttest.cpp [ cast _ moccable5-cpp : qttest.cpp ] /qt5//QtTest : : : <define>TEST_MOCK ]
# Test moc rule
[ run mock.cpp mock.h /qt5//QtCore : : : <define>TEST_MOCK ]
# Test resource compiler
[ run rcc.cpp rcc.qrc /qt5//QtCore : : : <rccflags>"-compress 9 -threshold 10" ]
: # requirements
: # default-build
: # usage-requirements
;
}

View File

@@ -0,0 +1,26 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtMoc
#include "mock.h"
#include <boost/test/unit_test.hpp>
Mock::Mock()
{
}
/*!
Check that the compiler get the correct #defines.
The logic to test the moc is in the header file "mock.h"
*/
BOOST_AUTO_TEST_CASE(construct_mock)
{
delete new Mock();
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(TEST_MOCK), true);
}

View File

@@ -0,0 +1,21 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#include <QtCore/QObject>
class Mock : public QObject
{
/*!
Test that the moc gets the necessary #defines
Else the moc will not see the Q_OBJECT macro, issue a warning
and linking will fail due to missing vtable symbols.
*/
#if defined(TEST_MOCK)
Q_OBJECT
#endif
public:
Mock();
};

View File

@@ -0,0 +1,21 @@
// (c) Copyright Juergen Hunold 2015
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE Qt3DCore
#include <Qt3DCore>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_3DCORE_LIB), true);
}
BOOST_AUTO_TEST_CASE ( sample_code )
{
Qt3DCore::QTransform torusTransform;
torusTransform.setScale3D(QVector3D(1.5, 1, 0.5));
torusTransform.setRotation(QQuaternion::fromAxisAndAngle(QVector3D(1, 0, 0), 45.0f));
}

View File

@@ -0,0 +1,24 @@
// (c) Copyright Juergen Hunold 2015
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE Qt3DInput
#include <Qt3DInput>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_3DINPUT_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_3DCORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_3DRENDER_LIB), true);
}
BOOST_AUTO_TEST_CASE ( sample_code )
{
Qt3DCore::QEntity rootEntity;
}

View File

@@ -0,0 +1,20 @@
// (c) Copyright Juergen Hunold 2015
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE Qt3DLogic
#include <Qt3DLogic>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_3DCORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_3DLOGIC_LIB), true);
}
BOOST_AUTO_TEST_CASE ( sample_code )
{
Qt3DLogic::QLogicAspect logicAspect;
}

View File

@@ -0,0 +1,21 @@
// (c) Copyright Juergen Hunold 2015
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE Qt3DRender
#include <Qt3DRender>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_3DCORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_3DRENDER_LIB), true);
}
BOOST_AUTO_TEST_CASE ( sample_code )
{
Qt3DCore::QEntity rootEntity;
Qt3DRender::QMaterial material(&rootEntity);
}

View File

@@ -0,0 +1,21 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtAssistant
#include <QAssistantClient>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GUI_LIB), true);
}
BOOST_AUTO_TEST_CASE( empty_assistant)
{
QAssistantClient client(QString());
}

View File

@@ -0,0 +1,34 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtBluetooth
#include <QtBluetooth>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_BLUETOOTH_LIB), true);
}
/*!
Try to detect a device
*/
BOOST_AUTO_TEST_CASE( bluetooth )
{
QList<QBluetoothHostInfo> localAdapters = QBluetoothLocalDevice::allDevices();
if (!localAdapters.empty())
{
QBluetoothLocalDevice adapter(localAdapters.at(0).address());
adapter.setHostMode(QBluetoothLocalDevice::HostDiscoverable);
}
else
{
BOOST_TEST(localAdapters.size() == 0);
}
}

View File

@@ -0,0 +1,15 @@
// (c) Copyright Juergen Hunold 2015
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtCharts
#include <QtCharts>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WIDGETS_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CHARTS_LIB), true);
}

View File

@@ -0,0 +1,22 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtCore
#include <QtCore>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
}
BOOST_AUTO_TEST_CASE( qstring_test)
{
QString dummy;
BOOST_CHECK_EQUAL(dummy.isEmpty(), true);
}

View File

@@ -0,0 +1,23 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtCoreFail
#include <QtCore>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
}
BOOST_AUTO_TEST_CASE( qstring_test)
{
QString dummy;
BOOST_CHECK_EQUAL(dummy.isEmpty(), true);
}

View File

@@ -0,0 +1,31 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtDataVisualization
#include <QtDataVisualization>
#include <QGuiApplication>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GUI_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_DATAVISUALIZATION_LIB), true);
}
BOOST_AUTO_TEST_CASE( datavisualization )
{
QGuiApplication app(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv);
QtDataVisualization::Q3DBars graph;
graph.setShadowQuality(QtDataVisualization::QAbstract3DGraph::ShadowQualitySoftMedium);
graph.activeTheme()->setBackgroundEnabled(false);
graph.activeTheme()->setLabelBackgroundEnabled(true);
}

View File

@@ -0,0 +1,26 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtDeclarative
#include <QCoreApplication>
#include <QDeclarativeView>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_XML_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_DECLARATIVE_LIB), true);
}
BOOST_AUTO_TEST_CASE( declarative )
{
QCoreApplication app(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv);
QDeclarativeView view;
}

View File

@@ -0,0 +1,29 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtGamepad
#include <QtGamepad>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GAMEPAD_LIB), true);
}
/*!
Try to detect a device
*/
BOOST_AUTO_TEST_CASE( gamepad )
{
auto gamepads = QGamepadManager::instance()->connectedGamepads();
if (gamepads.isEmpty()) {
return;
}
QGamepad gamepad(*gamepads.begin());
}

View File

@@ -0,0 +1,22 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtHelp
#include <QtHelp>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GUI_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_XML_LIB), true);
}
BOOST_AUTO_TEST_CASE( empty_engine)
{
QHelpEngine engine(QString());
}

View File

@@ -0,0 +1,30 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtPositioning
#include <QGeoAddress>
#include <QGeoLocation>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_POSITIONING_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_NETWORK_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_LOCATION_LIB), true);
}
BOOST_TEST_DONT_PRINT_LOG_VALUE(QGeoAddress)
BOOST_AUTO_TEST_CASE( geo_location )
{
QGeoLocation geolocation;
QGeoAddress address;
BOOST_CHECK_EQUAL(geolocation.address(), address);
}

View File

@@ -0,0 +1,25 @@
// (c) Copyright Juergen Hunold 2009
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtMultimedia
#include <QAudioDeviceInfo>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GUI_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_MULTIMEDIA_LIB), true);
}
BOOST_AUTO_TEST_CASE( audiodevices)
{
QList<QAudioDeviceInfo> devices = QAudioDeviceInfo::availableDevices(QAudio::AudioOutput);
for(int i = 0; i < devices.size(); ++i) {
BOOST_TEST_MESSAGE(QAudioDeviceInfo(devices.at(i)).deviceName().constData());
}
}

View File

@@ -0,0 +1,33 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtNetwork
#include <QHostInfo>
#include <QTextStream>
#include <boost/test/unit_test.hpp>
#include <iostream>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_NETWORK_LIB), true);
}
BOOST_AUTO_TEST_CASE( hostname )
{
QHostInfo info(QHostInfo::fromName("www.boost.org")); //blocking lookup
QTextStream stream(stdout, QIODevice::WriteOnly);
Q_FOREACH(QHostAddress address, info.addresses())
{
BOOST_CHECK_EQUAL(address.isNull(), false);
stream << address.toString() << endl;
}
}

View File

@@ -0,0 +1,28 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtNfc
#include <QtNfc>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_NFC_LIB), true);
}
/*!
Try to detect a device
*/
BOOST_AUTO_TEST_CASE( nfc )
{
QNearFieldManager manager;
if (!manager.isAvailable())
{
BOOST_TEST_MESSAGE("No Nfc");
}
}

View File

@@ -0,0 +1,23 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtPositioning
#include <QGeoCoordinate>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_POSITIONING_LIB), true);
}
BOOST_AUTO_TEST_CASE( geo_coordinate )
{
QGeoCoordinate geocoordinate;
BOOST_CHECK_EQUAL(geocoordinate.type(), QGeoCoordinate::InvalidCoordinate);
}

View File

@@ -0,0 +1,44 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtPurchasing
#include <QtPurchasing>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_PURCHASING_LIB), true);
}
class DummyProduct : public QInAppProduct
{
public:
DummyProduct() : QInAppProduct{QStringLiteral("One"),
QString{},
QString{},
Consumable,
QStringLiteral("DummyProduct"),
nullptr} {};
void purchase() override {};
};
std::ostream&
operator << (std::ostream& stream, QString const& string)
{
stream << qPrintable(string);
return stream;
}
BOOST_AUTO_TEST_CASE (purchase)
{
DummyProduct product;
BOOST_TEST(product.price() == QLatin1String("One"));
BOOST_TEST(product.identifier() == QLatin1String("DummyProduct"));
}

View File

@@ -0,0 +1,43 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtQuick
#include <QDir>
#include <QTimer>
#include <QGuiApplication>
#include <QQmlEngine>
#include <QQuickView>
#include <QDebug>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_QML_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_QUICK_LIB), true);
}
BOOST_AUTO_TEST_CASE (simple_test)
{
QGuiApplication app(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv);
QQuickView view;
QString fileName(boost::unit_test::framework::master_test_suite().argv[1]);
view.connect(view.engine(), SIGNAL(quit()), &app, SLOT(quit()));
view.setSource(QUrl::fromLocalFile(fileName)); \
QTimer::singleShot(2000, &app, SLOT(quit())); // Auto-close window
if (QGuiApplication::platformName() == QLatin1String("qnx") ||
QGuiApplication::platformName() == QLatin1String("eglfs")) {
view.setResizeMode(QQuickView::SizeRootObjectToView);
view.showFullScreen();
} else {
view.show();
}
BOOST_CHECK_EQUAL(app.exec(), 0);
}

View File

@@ -0,0 +1,20 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
import QtQuick 2.0
Rectangle {
id: page
width: 400; height: 200
color: "#d6d6d6"
Text {
id: helloText
text: "B2 built!"
color: "darkgray"
anchors.horizontalCenter: page.horizontalCenter
anchors.verticalCenter: page.verticalCenter
font.pointSize: 30; font.italic: true ; font.bold: true
}
}

View File

@@ -0,0 +1,37 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtScript
#include <QScriptEngine>
#include <QCoreApplication>
#include <boost/test/unit_test.hpp>
#include <iostream>
std::ostream&
operator << (std::ostream& stream, QString const& string)
{
stream << qPrintable(string);
return stream;
}
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_SCRIPT_LIB), true);
}
BOOST_AUTO_TEST_CASE( script )
{
QCoreApplication app(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv);
QScriptEngine myEngine;
QScriptValue three = myEngine.evaluate("1 + 2");
BOOST_CHECK_EQUAL(three.toNumber(), 3);
BOOST_CHECK_EQUAL(three.toString(), QLatin1String("3"));
}

View File

@@ -0,0 +1,47 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtScriptTools
#include <QScriptEngine>
#include <QScriptEngineDebugger>
#include <QCoreApplication>
#include <boost/test/unit_test.hpp>
#include <iostream>
namespace utf = boost::unit_test::framework;
std::ostream&
operator << (std::ostream& stream, QString const& string)
{
stream << qPrintable(string);
return stream;
}
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_SCRIPTTOOLS_LIB), true);
}
BOOST_AUTO_TEST_CASE( script )
{
QCoreApplication app(utf::master_test_suite().argc,
utf::master_test_suite().argv);
QScriptEngine myEngine;
QScriptValue three = myEngine.evaluate("1 + 2");
QScriptEngineDebugger debugger;
debugger.attachTo(&myEngine);
BOOST_CHECK_EQUAL(three.toNumber(), 3);
BOOST_CHECK_EQUAL(three.toString(), QLatin1String("3"));
debugger.detach();
}

View File

@@ -0,0 +1,33 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtScxml
#include <QtScxml>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_SCXML_LIB), true);
}
std::ostream&
operator << (std::ostream& stream, QString const& string)
{
stream << qPrintable(string);
return stream;
}
/*!
*/
BOOST_AUTO_TEST_CASE( scxml )
{
QString sessionId = QScxmlStateMachine::generateSessionId(QStringLiteral("dummy"));
BOOST_TEST(sessionId.isEmpty() == false);
BOOST_TEST(sessionId == QString{"dummy1"});
}

View File

@@ -0,0 +1,25 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtSerialBus
#include <QtSerialBus>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_SERIALBUS_LIB), true);
}
/*!
create a canbus instance
*/
BOOST_AUTO_TEST_CASE( serialBus )
{
auto canbus = QCanBus::instance();
Q_UNUSED(canbus);
}

View File

@@ -0,0 +1,22 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtSerialPort
#include <QtSerialPort>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_SERIALPORT_LIB), true);
}
BOOST_AUTO_TEST_CASE( serialport )
{
QSerialPort serialPort;
serialPort.setPortName(QStringLiteral("test serialport"));
}

View File

@@ -0,0 +1,37 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtSql
#include <QSqlDatabase>
#include <QTextStream>
#include <QStringList>
#include <boost/test/unit_test.hpp>
#include <iostream>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_SQL_LIB), true);
}
BOOST_AUTO_TEST_CASE( drivers )
{
QTextStream stream(stdout, QIODevice::WriteOnly);
Q_FOREACH(QString it, QSqlDatabase:: drivers())
{
stream << it << endl;
}
}
BOOST_AUTO_TEST_CASE( construct )
{
QSqlDatabase database;
BOOST_CHECK_EQUAL(database.isOpen(), false);
}

View File

@@ -0,0 +1,21 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtSvg
#include <QtSvg>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_SVG_LIB), true);
}
BOOST_AUTO_TEST_CASE( generator_construct)
{
QSvgGenerator generator;
}

View File

@@ -0,0 +1,30 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#include <QtTest>
class QtTest: public QObject
{
/*!
Test if the moc gets the #define
*/
#if defined(TEST_MOCK)
Q_OBJECT
#endif
private Q_SLOTS:
void toUpper();
};
void
QtTest::toUpper()
{
QString str = "Hello";
QCOMPARE(str.toUpper(), QString("HELLO"));
}
QTEST_MAIN(QtTest)
#include "qttest.moc"

View File

@@ -0,0 +1,29 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtWebChannel
#include <QtWebChannel>
#include <QGuiApplication>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GUI_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBCHANNEL_LIB), true);
}
BOOST_AUTO_TEST_CASE( webchannel )
{
QGuiApplication app(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv);
QWebChannel channel;
QObject dummy;
channel.registerObject(QStringLiteral("dummy"), &dummy);
}

View File

@@ -0,0 +1,30 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtWebEngine
#include <QtWebEngine>
#include <QGuiApplication>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GUI_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBENGINE_LIB), true);
}
/*!
Just call the global initialization function
*/
BOOST_AUTO_TEST_CASE( webengine )
{
QGuiApplication app(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv);
QtWebEngine::initialize();
}

View File

@@ -0,0 +1,40 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtWebEngineWidgets
#include <QtWebEngineWidgets>
#include <QWebEngineProfile>
#include <QWebEngineSettings>
#include <QWebEngineScript>
#include <QApplication>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WIDGETS_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBENGINE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBENGINECORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBENGINEWIDGETS_LIB), true);
}
/*!
Also tests the core library
*/
BOOST_AUTO_TEST_CASE( webengine_widgets )
{
QApplication app(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv);
QWebEngineSettings *defaultSettings = QWebEngineSettings::globalSettings();
QWebEngineProfile *defaultProfile = QWebEngineProfile::defaultProfile();
defaultSettings->setAttribute(QWebEngineSettings::FullScreenSupportEnabled, true);
defaultProfile->setPersistentCookiesPolicy(QWebEngineProfile::NoPersistentCookies);
}

View File

@@ -0,0 +1,22 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtWebKit
#include <QWebSettings>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GUI_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBKIT_LIB), true);
}
BOOST_AUTO_TEST_CASE( webkit )
{
BOOST_CHECK(QWebSettings::globalSettings());
}

View File

@@ -0,0 +1,23 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtWebKitWidgets
#include <QWebPage>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GUI_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBKITWIDGETS_LIB), true);
}
BOOST_AUTO_TEST_CASE( webkit )
{
QWebPage page;
BOOST_CHECK_EQUAL(page.isModified(), false);
}

View File

@@ -0,0 +1,26 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtWebSockets
#include <QtWebSockets>
#include <QCoreApplication>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBSOCKETS_LIB), true);
}
BOOST_AUTO_TEST_CASE( websocket )
{
QCoreApplication app(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv);
QWebSocket socket;
}

View File

@@ -0,0 +1,24 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtWebSockets
#include <QtWebSockets>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE (defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBSOCKETS_LIB), true);
}
BOOST_AUTO_TEST_CASE( websocket )
{
QWebSocket socket;
socket.setPauseMode(QAbstractSocket::PauseNever);
BOOST_TEST(socket.isValid() == false);
}

View File

@@ -0,0 +1,31 @@
// (c) Copyright Juergen Hunold 2016
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtWebView
#include <QtWebView>
#include <QGuiApplication>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBENGINE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBENGINECORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WEBVIEW_LIB), true);
}
/*!
Just call the global initialization function
*/
BOOST_AUTO_TEST_CASE( webview )
{
QGuiApplication app(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv);
QtWebView::initialize();
}

View File

@@ -0,0 +1,43 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtGui
#include <QtWidgets/QApplication>
#include <boost/test/unit_test.hpp>
struct Fixture
{
Fixture()
: application(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv,
false)
{
BOOST_TEST_MESSAGE( "setup QApplication fixture" );
}
~Fixture()
{
BOOST_TEST_MESSAGE( "teardown QApplication fixture" );
}
QApplication application;
};
BOOST_GLOBAL_FIXTURE( Fixture );
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_GUI_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_WIDGETS_LIB), true);
}
BOOST_AUTO_TEST_CASE( qtgui_test)
{
BOOST_CHECK_EQUAL(true, true);
}

View File

@@ -0,0 +1,29 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtXml
#include <QtXml>
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_XML_LIB), true);
}
BOOST_AUTO_TEST_CASE( reader_construct)
{
QXmlStreamReader reader;
BOOST_CHECK_EQUAL(reader.atEnd(), false);
}
BOOST_AUTO_TEST_CASE( writer_construct)
{
QXmlStreamWriter writer;
BOOST_CHECK_EQUAL(writer.device(), static_cast<QIODevice*>(0));
}

View File

@@ -0,0 +1,76 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtXmlPatterns
#include <QXmlQuery>
#include <QXmlSerializer>
#include <QCoreApplication>
#include <QString>
#include <QTextStream>
#include <QBuffer>
#include <boost/test/unit_test.hpp>
struct Fixture
{
Fixture()
: application(boost::unit_test::framework::master_test_suite().argc,
boost::unit_test::framework::master_test_suite().argv)
{
BOOST_TEST_MESSAGE( "setup QCoreApplication fixture" );
}
~Fixture()
{
BOOST_TEST_MESSAGE( "teardown QCoreApplication fixture" );
}
QCoreApplication application;
};
BOOST_GLOBAL_FIXTURE( Fixture );
QByteArray doc("<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
"<html xmlns=\"http://www.w3.org/1999/xhtml/\" xml:lang=\"en\" lang=\"en\">"
" <head>"
" <title>Global variables report for globals.gccxml</title>"
" </head>"
"<body><p>Some Test text</p></body></html>");
BOOST_AUTO_TEST_CASE( defines)
{
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_CORE_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_XMLPATTERNS_LIB), true);
BOOST_CHECK_EQUAL(BOOST_IS_DEFINED(QT_XML_LIB), false);
}
BOOST_AUTO_TEST_CASE( extract )
{
QBuffer buffer(&doc); // This is a QIODevice.
buffer.open(QIODevice::ReadOnly);
QXmlQuery query;
query.bindVariable("myDocument", &buffer);
query.setQuery("declare variable $myDocument external;"
"doc($myDocument)");///p[1]");
BOOST_CHECK_EQUAL(query.isValid(), true);
QByteArray result;
QBuffer out(&result);
out.open(QIODevice::WriteOnly);
QXmlSerializer serializer(query, &out);
BOOST_CHECK_EQUAL(query.evaluateTo(&serializer), true);
QTextStream stream(stdout);
BOOST_CHECK_EQUAL(result.isEmpty(), false);
stream << "hallo" << result << endl;
}

View File

@@ -0,0 +1,20 @@
// (c) Copyright Juergen Hunold 2012
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE.txt or copy at
// https://www.bfgroup.xyz/b2/LICENSE.txt)
#define BOOST_TEST_MODULE QtCore
#include <QtCore>
#include <boost/test/unit_test.hpp>
std::ostream& operator<<(std::ostream& out, QString const& text)
{
out << text.toUtf8().constData();
return out;
}
BOOST_AUTO_TEST_CASE (check_exists)
{
BOOST_CHECK(QFile::exists(":/test/rcc.cpp"));
}

View File

@@ -0,0 +1,5 @@
<!DOCTYPE RCC><RCC version="1.0">
<qresource prefix="/test/">
<file>rcc.cpp</file>
</qresource>
</RCC>