File: test_state_config_main.cpp

package info (click to toggle)
kconfig 5.116.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 4,080 kB
  • sloc: cpp: 17,783; xml: 73; perl: 63; sh: 14; makefile: 7
file content (41 lines) | stat: -rw-r--r-- 1,162 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/*
    SPDX-FileCopyrightText: 2021 Alexander Lohnau <alexander.lohnau@gmx.de>

    SPDX-License-Identifier: MIT
*/

#include "test_state_config.h"
#include <QTest>

class TestStateConfig : public QObject
{
    Q_OBJECT

private Q_SLOTS:
    void testStateConfig()
    {
        auto stateConfig = KSharedConfig::openStateConfig(QStringLiteral("test_statedatarc"));

        // Clean the group at every start
        stateConfig->deleteGroup("General");
        stateConfig->sync();

        // It should have the default value
        QCOMPARE(MyStateConfig().someStateData(), 0);

        // the updated value should be read from the generated config class
        stateConfig->group("General").writeEntry("SomeStateData", 1);
        QCOMPARE(MyStateConfig().someStateData(), 1);

        // Make sure writing the value works as expected
        MyStateConfig cfg;
        cfg.setSomeStateData(2);
        QVERIFY(cfg.isSaveNeeded());
        cfg.save();
        stateConfig->reparseConfiguration();
        QCOMPARE(stateConfig->group("General").readEntry("SomeStateData", -1), 2);
    }
};
QTEST_MAIN(TestStateConfig)

#include "test_state_config_main.moc"