Discover external tool settings and refresh cached settings UI
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
// SPDX-License-Identifier: MIT
|
||||
#include <QDateTime>
|
||||
#include <QFile>
|
||||
#include <QFileInfo>
|
||||
#include <QLibrary>
|
||||
#include <QTest>
|
||||
|
||||
class QmlResourceTest : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
private Q_SLOTS:
|
||||
void packagedUiHasItsOwnCacheStamp()
|
||||
{
|
||||
QLibrary plugin(QString::fromUtf8(KCM_PLUGIN_PATH));
|
||||
QVERIFY2(plugin.load(), qPrintable(plugin.errorString()));
|
||||
QFile ui(QStringLiteral(":/kcm/kcm_fedora_tools/main.qml"));
|
||||
QVERIFY(ui.open(QIODevice::ReadOnly));
|
||||
const auto source = ui.readAll();
|
||||
QVERIFY(source.contains("configureExternalTool"));
|
||||
QVERIFY(!source.contains("configurePanelActions"));
|
||||
const auto stamp = QFileInfo(ui).lastModified().toSecsSinceEpoch();
|
||||
QVERIFY(stamp > 0);
|
||||
const auto packageDate = qgetenv("SOURCE_DATE_EPOCH").toLongLong();
|
||||
if (packageDate > 0) {
|
||||
QVERIFY2(stamp != packageDate, "QML resources must not share the RPM changelog timestamp across revisions");
|
||||
}
|
||||
}
|
||||
};
|
||||
QTEST_GUILESS_MAIN(QmlResourceTest)
|
||||
#include "test-qmlresource.moc"
|
||||
Reference in New Issue
Block a user