diff options
Diffstat (limited to 'tests/auto/installer/scriptengine/tst_scriptengine.cpp')
-rw-r--r-- | tests/auto/installer/scriptengine/tst_scriptengine.cpp | 62 |
1 files changed, 45 insertions, 17 deletions
diff --git a/tests/auto/installer/scriptengine/tst_scriptengine.cpp b/tests/auto/installer/scriptengine/tst_scriptengine.cpp index 105bcf5d7..86017a229 100644 --- a/tests/auto/installer/scriptengine/tst_scriptengine.cpp +++ b/tests/auto/installer/scriptengine/tst_scriptengine.cpp @@ -1,6 +1,6 @@ /************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2023 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Installer Framework. @@ -221,13 +221,6 @@ private slots: .hasProperty(QLatin1String("getExistingDirectory")), true); QCOMPARE(global.property(QLatin1String("QFileDialog")) .hasProperty(QLatin1String("getOpenFileName")), true); - - QCOMPARE(global.hasProperty(QLatin1String("InstallerProxy")), true); - QCOMPARE(global.property(QLatin1String("InstallerProxy")) - .hasProperty(QLatin1String("componentByName")), true); - QCOMPARE(global.property(QLatin1String("InstallerProxy")) - .hasProperty(QLatin1String("components")), true); - QCOMPARE(global.hasProperty(QLatin1String("QDesktopServices")), true); QCOMPARE(global.property(QLatin1String("QDesktopServices")) .hasProperty(QLatin1String("openUrl")), true); @@ -249,6 +242,8 @@ private slots: QJSValue sinfo = global.property(QLatin1String("systemInfo")); QCOMPARE(sinfo.property(QLatin1String("currentCpuArchitecture")).toString(), QSysInfo::currentCpuArchitecture()); + QCOMPARE(sinfo.property(QLatin1String("buildCpuArchitecture")).toString(), + QSysInfo::buildCpuArchitecture()); QCOMPARE(sinfo.property(QLatin1String("kernelType")).toString(), QSysInfo::kernelType()); QCOMPARE(sinfo.property(QLatin1String("kernelVersion")).toString(), QSysInfo::kernelVersion()); @@ -388,13 +383,24 @@ private slots: QCOMPARE(result.isError(), false); } + void loadSimpleComponentScript_data() + { + QTest::addColumn<QString>("path"); + QTest::addColumn<bool>("postLoad"); + QTest::newRow("Pre component script") << ":///data/component1.qs" << false; + QTest::newRow("Post component script") << ":///data/component1.qs" << true; + } + void loadSimpleComponentScript() { - try { - // ignore retranslateUi which is called by loadComponentScript + QFETCH(QString, path); + QFETCH(bool, postLoad); + + try { + // ignore retranslateUi which is called by evaluateComponentScript setExpectedScriptOutput("Component constructor - OK"); setExpectedScriptOutput("retranslateUi - OK"); - m_component->loadComponentScript(":///data/component1.qs"); + m_component->evaluateComponentScript(path, postLoad); setExpectedScriptOutput("retranslateUi - OK"); m_component->languageChanged(); @@ -422,8 +428,19 @@ private slots: } } + void loadBrokenComponentScript_data() + { + QTest::addColumn<QString>("path"); + QTest::addColumn<bool>("postLoad"); + QTest::newRow("Pre component script") << ":///data/component2.qs" << false; + QTest::newRow("Post component script") << ":///data/component2.qs" << true; + } + void loadBrokenComponentScript() { + QFETCH(QString, path); + QFETCH(bool, postLoad); + Component *testComponent = new Component(&m_core); testComponent->setValue(scName, "broken.component"); @@ -433,21 +450,32 @@ private slots: try { // ignore Output from script setExpectedScriptOutput("script function: Component"); - testComponent->loadComponentScript(":///data/component2.qs"); + testComponent->evaluateComponentScript(path, postLoad); } catch (const Error &error) { const QString debugMessage( - QString("create Error-Exception: \"Exception while loading the component script \"%1\": " - "ReferenceError: broken is not defined\"").arg(QDir::toNativeSeparators(":///data/component2.qs"))); + QString("Exception while loading the component script \"%1\": " + "ReferenceError: broken is not defined on line number: 33").arg(QDir::toNativeSeparators(":///data/component2.qs"))); QVERIFY2(debugMessage.contains(error.message()), "(ReferenceError: broken is not defined)"); } } + void loadComponentUserInterfaces_data() + { + QTest::addColumn<QString>("path"); + QTest::addColumn<bool>("postLoad"); + QTest::newRow("Pre component script") << ":///data/userinterface.qs" << false; + QTest::newRow("Post component script") << ":///data/userinterface.qs" << true; + } + void loadComponentUserInterfaces() { - try { + QFETCH(QString, path); + QFETCH(bool, postLoad); + try { setExpectedScriptOutput("checked: false"); + TestGui testGui(&m_core); m_component->loadUserInterfaces(QDir(":///data"), QStringList() << QLatin1String("form.ui")); - m_component->loadComponentScript(":///data/userinterface.qs"); + m_component->evaluateComponentScript(path, postLoad); } catch (const Error &error) { QFAIL(qPrintable(error.message())); } @@ -591,7 +619,7 @@ private slots: try { m_core.setPackageManager(); Component *component = m_core.componentByName("component.test.addOperation"); - component->loadComponentScript(":///data/addOperation.qs"); + component->evaluateComponentScript(":///data/addOperation.qs"); setExpectedScriptOutput("Component::createOperations()"); component->createOperations(); |