diff options
Diffstat (limited to 'autotests')
| -rw-r--r-- | autotests/CMakeLists.txt | 4 | ||||
| -rw-r--r-- | autotests/fallbackconfigresources.qrc | 5 | ||||
| -rw-r--r-- | autotests/fallbackconfigresourcestest.cpp | 49 | 
3 files changed, 57 insertions, 1 deletions
| diff --git a/autotests/CMakeLists.txt b/autotests/CMakeLists.txt index 8213bc41..96c7b65e 100644 --- a/autotests/CMakeLists.txt +++ b/autotests/CMakeLists.txt @@ -35,7 +35,9 @@ qt5_add_resources(sharedconfigresources sharedconfigresources.qrc)  ecm_add_test(ksharedconfigtest ${sharedconfigresources} TEST_NAME kconfigcore-ksharedconfigtest LINK_LIBRARIES KF5::ConfigCore Qt5::Test Qt5::Concurrent) - +# test for fallback to :/kconfig/xxxx config resource +qt5_add_resources(fallbackconfigresources fallbackconfigresources.qrc) +ecm_add_test(fallbackconfigresourcestest ${fallbackconfigresources} TEST_NAME kconfigcore-fallbackconfigresourcestest LINK_LIBRARIES KF5::ConfigCore Qt5::Test Qt5::Concurrent)  ecm_add_tests(     kconfignokdehometest.cpp diff --git a/autotests/fallbackconfigresources.qrc b/autotests/fallbackconfigresources.qrc new file mode 100644 index 00000000..0a395717 --- /dev/null +++ b/autotests/fallbackconfigresources.qrc @@ -0,0 +1,5 @@ +<!DOCTYPE RCC><RCC version="1.0"> +    <qresource prefix="/kconfig"> +        <file alias="kconfigtesting">test.ini</file> +    </qresource> +</RCC> diff --git a/autotests/fallbackconfigresourcestest.cpp b/autotests/fallbackconfigresourcestest.cpp new file mode 100644 index 00000000..f921031e --- /dev/null +++ b/autotests/fallbackconfigresourcestest.cpp @@ -0,0 +1,49 @@ +/* +   This file is part of the KDE libraries +   Copyright (c) 2015 Christoph Cullmann <cullmann@kde.org> + +   This library is free software; you can redistribute it and/or +   modify it under the terms of the GNU Library General Public +   License as published by the Free Software Foundation; either +   version 2 of the License, or (at your option) any later version. + +   This library is distributed in the hope that it will be useful, +   but WITHOUT ANY WARRANTY; without even the implied warranty of +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU +   Library General Public License for more details. + +   You should have received a copy of the GNU Library General Public License +   along with this library; see the file COPYING.LIB.  If not, write to +   the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +   Boston, MA 02110-1301, USA. +*/ + +#include <QtTest> +#include <ksharedconfig.h> +#include <kconfiggroup.h> + +class FallbackConfigResourcesTest : public QObject +{ +    Q_OBJECT +private Q_SLOTS: +    void initTestCase(); +    void testResourceFallbackFile(); +}; + +void FallbackConfigResourcesTest::initTestCase() +{ +    QStandardPaths::enableTestMode(true); +} + +void FallbackConfigResourcesTest::testResourceFallbackFile() +{ +    KSharedConfig::Ptr sharedConfig = KSharedConfig::openConfig(QStringLiteral("kconfigtesting"), KConfig::NoGlobals); +    QVERIFY(sharedConfig); + +    KConfigGroup cfg(sharedConfig, QStringLiteral("MainSection")); +    QCOMPARE(cfg.readEntry(QStringLiteral("TestEntry"), QStringLiteral("UnexpectedData")), QStringLiteral("ExpectedData")); +} + +QTEST_MAIN(FallbackConfigResourcesTest) + +#include "fallbackconfigresourcestest.moc" | 
