File indexing completed on 2024-06-16 05:11:11

0001 /*
0002     SPDX-FileCopyrightText: 2022 Fushan Wen <qydwhotmail@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #include <QQmlContext>
0008 #include <QQmlEngine>
0009 #include <QTest>
0010 #include <QtQuickTest>
0011 
0012 #include "commontestdata.h"
0013 
0014 class TestSetup : public QObject
0015 {
0016     Q_OBJECT
0017 
0018 public:
0019     TestSetup();
0020 
0021 public Q_SLOTS:
0022     void qmlEngineAvailable(QQmlEngine *engine);
0023     void cleanupTestCase();
0024 
0025 private:
0026     QDir m_dataDir;
0027     QString m_wallpaperPath;
0028     QString m_packagePath;
0029     QString m_bizzarePath;
0030 };
0031 
0032 TestSetup::TestSetup()
0033 {
0034     m_dataDir = QDir(QFINDTESTDATA("testdata/default"));
0035     renameBizarreFile(m_dataDir);
0036 
0037     m_wallpaperPath = m_dataDir.absoluteFilePath(QStringLiteral("wallpaper.jpg.jpg"));
0038     m_packagePath = m_dataDir.absoluteFilePath(QStringLiteral("package/"));
0039     m_bizzarePath = m_dataDir.absoluteFilePath(ImageBackendTestData::defaultImageFileName5);
0040 }
0041 
0042 void TestSetup::qmlEngineAvailable(QQmlEngine *engine)
0043 {
0044     engine->rootContext()->setContextProperty(QStringLiteral("testDirs"), QStringList{m_dataDir.absolutePath()});
0045     engine->rootContext()->setContextProperty(QStringLiteral("testImage"), QUrl::fromLocalFile(m_wallpaperPath));
0046     engine->rootContext()->setContextProperty(QStringLiteral("testPackage"), QUrl::fromLocalFile(m_packagePath));
0047     engine->rootContext()->setContextProperty(QStringLiteral("testBizzareFileName"), m_bizzarePath);
0048     engine->rootContext()->setContextProperty(QStringLiteral("testBizzareFileName_modelImage"), QUrl::fromUserInput(m_bizzarePath).toString());
0049 }
0050 
0051 void TestSetup::cleanupTestCase()
0052 {
0053     restoreBizarreFile(m_dataDir);
0054 }
0055 
0056 QUICK_TEST_MAIN_WITH_SETUP(ImageBackend, TestSetup)
0057 
0058 #include "tst_imagebackend.moc"