Am 2018-02-13 15:42, schrieb Aleix Pol:
On Tue, Feb 13, 2018 at 1:14 PM, Michael Heidelbach <ottw...@gmail.com>
wrote:
Hi!
Currently I'm working on baloo-widgets. For a unit test I need to
temporarily change KConfig data.
My approach would be like this:
initTestCase()
KConfig config("baloofileinformationrc", KConfig::NoGlobals);
KConfigGroup settings = config.group("Show");
set everything to true here.
Revert the changes incleanupTestCase();
How is this done most efficiently and without messing too much with
baloofileinformationrc?
Ideally you should QStandardPaths::setTestModeEnabled(true), then you
can do as you please with config files which should end up in
~/.qttest.
A different approach could be to use a
KSharedConfig::openConfig(QString(), KConfig::SimpleConfig)
This creates an in-memory KConfig not backed by a file. That's what I
use in KWin to mock config. All the objects interacting with config have
a setConfig(KSharedConfigPtr) method which I can use to inject the
mocked config.
Cheers
Martin