Skip to content

Commit 0ed3434

Browse files
committed
test: add regression test for bitcoin-core/gui/issues/567
1 parent a39e6c1 commit 0ed3434

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

src/qt/test/optiontests.cpp

+30
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
// Distributed under the MIT software license, see the accompanying
33
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
44

5+
#include <init.h>
56
#include <qt/bitcoin.h>
67
#include <qt/test/optiontests.h>
78
#include <test/util/setup_common.h>
@@ -29,3 +30,32 @@ void OptionTests::optionTests()
2930
});
3031
gArgs.WriteSettingsFile();
3132
}
33+
34+
void OptionTests::parametersInteraction()
35+
{
36+
gArgs.LockSettings([&](util::Settings& s) {
37+
s.forced_settings.erase("listen");
38+
s.forced_settings.erase("listenonion");
39+
});
40+
QVERIFY(!gArgs.IsArgSet("-listen"));
41+
QVERIFY(!gArgs.IsArgSet("-listenonion"));
42+
43+
QSettings settings;
44+
settings.setValue("fListen", false);
45+
46+
OptionsModel{};
47+
48+
const bool expected{false};
49+
50+
QVERIFY(gArgs.IsArgSet("-listen"));
51+
QCOMPARE(gArgs.GetBoolArg("-listen", !expected), expected);
52+
53+
QVERIFY(gArgs.IsArgSet("-listenonion"));
54+
QCOMPARE(gArgs.GetBoolArg("-listenonion", !expected), expected);
55+
56+
QVERIFY(AppInitParameterInteraction(gArgs));
57+
58+
// cleanup
59+
settings.remove("fListen");
60+
QVERIFY(!settings.contains("fListen"));
61+
}

src/qt/test/optiontests.h

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ class OptionTests : public QObject
1717

1818
private Q_SLOTS:
1919
void optionTests();
20+
void parametersInteraction();
2021

2122
private:
2223
interfaces::Node& m_node;

0 commit comments

Comments
 (0)