2022-08-19 15:59:36 +02:00
|
|
|
// Copyright (C) 2022 The Qt Company Ltd.
|
2022-12-21 10:12:09 +01:00
|
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
2022-04-08 11:58:43 +02:00
|
|
|
|
|
|
|
|
#include <QtTest>
|
|
|
|
|
|
|
|
|
|
#include <updateinfo/updateinfotools.h>
|
|
|
|
|
|
2022-04-21 14:10:09 +02:00
|
|
|
Q_LOGGING_CATEGORY(updateLog, "qtc.updateinfo", QtWarningMsg)
|
2022-04-08 11:58:43 +02:00
|
|
|
|
|
|
|
|
class tst_UpdateInfo : public QObject
|
|
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
|
void updates_data();
|
|
|
|
|
void updates();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
void tst_UpdateInfo::updates_data()
|
|
|
|
|
{
|
2022-04-20 15:48:59 +02:00
|
|
|
QTest::addColumn<QString>("updateXml");
|
|
|
|
|
QTest::addColumn<QString>("packageXml");
|
2022-04-08 11:58:43 +02:00
|
|
|
QTest::addColumn<QList<Update>>("xupdates");
|
|
|
|
|
QTest::addColumn<QList<QtPackage>>("xpackages");
|
|
|
|
|
|
|
|
|
|
QTest::newRow("updates and packages")
|
2022-04-20 10:27:18 +02:00
|
|
|
<< R"raw(<?xml version="1.0"?>
|
|
|
|
|
<updates>
|
2022-04-08 11:58:43 +02:00
|
|
|
<update name="Qt Design Studio 3.2.0" version="3.2.0-0-202203291247" size="3113234690" id="qt.tools.qtdesignstudio"/>
|
2022-04-20 15:48:59 +02:00
|
|
|
</updates>)raw"
|
|
|
|
|
<< R"raw(<?xml version="1.0"?>
|
2022-04-08 11:58:43 +02:00
|
|
|
<availablepackages>
|
|
|
|
|
<package name="qt.qt6.621" displayname="Qt 6.2.1" version="6.2.1-0-202110220854"/>
|
|
|
|
|
<package name="qt.qt5.5152" displayname="Qt 5.15.2" version="5.15.2-0-202011130607" installedVersion="5.15.2-0-202011130607"/>
|
|
|
|
|
<package name="qt.qt6.610" displayname="Qt 6.1.0-beta1" version="6.1.0-0-202105040922"/>
|
|
|
|
|
</availablepackages>)raw"
|
|
|
|
|
<< QList<Update>({{"Qt Design Studio 3.2.0", "3.2.0-0-202203291247"}})
|
|
|
|
|
<< QList<QtPackage>(
|
|
|
|
|
{{"Qt 6.2.1", QVersionNumber::fromString("6.2.1-0-202110220854"), false, false},
|
|
|
|
|
{"Qt 6.1.0-beta1", QVersionNumber::fromString("6.1.0-0-202105040922"), false, true},
|
|
|
|
|
{"Qt 5.15.2", QVersionNumber::fromString("5.15.2-0-202011130607"), true, false}});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void tst_UpdateInfo::updates()
|
|
|
|
|
{
|
2022-04-20 15:48:59 +02:00
|
|
|
QFETCH(QString, updateXml);
|
|
|
|
|
QFETCH(QString, packageXml);
|
2022-04-08 11:58:43 +02:00
|
|
|
QFETCH(QList<Update>, xupdates);
|
|
|
|
|
QFETCH(QList<QtPackage>, xpackages);
|
|
|
|
|
|
2022-04-20 15:48:59 +02:00
|
|
|
const QList<Update> updates = availableUpdates(updateXml);
|
2022-04-08 11:58:43 +02:00
|
|
|
QCOMPARE(updates, xupdates);
|
2022-04-20 15:48:59 +02:00
|
|
|
const QList<QtPackage> packages = availableQtPackages(packageXml);
|
2022-04-08 11:58:43 +02:00
|
|
|
QCOMPARE(packages, xpackages);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
QTEST_GUILESS_MAIN(tst_UpdateInfo)
|
|
|
|
|
|
|
|
|
|
#include "tst_updateinfo.moc"
|