Skip to content

Commit dd664c1

Browse files
committed
qml: adapt core settings to updated Core APIs
1 parent 877bda1 commit dd664c1

4 files changed

Lines changed: 27 additions & 26 deletions

File tree

qml/core_settings.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -206,12 +206,12 @@ int64_t PruneGBToMiB(int gb)
206206

207207
bool PruneEnabled(const common::SettingsValue& setting)
208208
{
209-
return SettingToInt(setting, 0) > 1;
209+
return SettingTo<int64_t>(setting, 0) > 1;
210210
}
211211

212212
int PruneSizeGBFromSetting(const common::SettingsValue& setting)
213213
{
214-
const int64_t value = SettingToInt(setting, 0);
214+
const int64_t value = SettingTo<int64_t>(setting, 0);
215215
return value > 1 ? PruneMiBToGB(value) : DEFAULT_PRUNE_TARGET_GB;
216216
}
217217

@@ -480,8 +480,8 @@ bool CoreSettingValuesEqual(const QString& name, const common::SettingsValue& le
480480
return left_bool && right_bool && *left_bool == *right_bool;
481481
}
482482
if (IsIntCoreSetting(name)) {
483-
const std::optional<int64_t> left_int = SettingToInt(left);
484-
const std::optional<int64_t> right_int = SettingToInt(right);
483+
const std::optional<int64_t> left_int = SettingTo<int64_t>(left);
484+
const std::optional<int64_t> right_int = SettingTo<int64_t>(right);
485485
return left_int && right_int && *left_int == *right_int;
486486
}
487487
if (IsOptionalStringCoreSetting(name)) {

qml/models/options_model.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -118,11 +118,11 @@ OptionsQmlModel::OptionsQmlModel(interfaces::Node& node, ArgsManager& args)
118118
m_core_setting_statuses = QmlCoreSettings::BuildCoreSettingStatuses(m_args, QmlCoreSettings::CoreSettingNames());
119119
m_core_settings.setStatuses(CoreSettingStatusesForNames(m_core_setting_statuses, QmlCoreSettings::OnboardingCoreSettingNames()));
120120

121-
m_dbcache_size_mib = SettingToInt(QmlCoreSettings::DisplaySettingValue(m_node, m_args, QStringLiteral("dbcache")), DEFAULT_DB_CACHE >> 20);
121+
m_dbcache_size_mib = SettingTo<int64_t>(QmlCoreSettings::DisplaySettingValue(m_node, m_args, QStringLiteral("dbcache")), DEFAULT_DB_CACHE >> 20);
122122

123-
m_max_mempool_size_mb = SettingToInt(QmlCoreSettings::DisplaySettingValue(m_node, m_args, QStringLiteral("maxmempool")), DEFAULT_MAX_MEMPOOL_SIZE_MB);
123+
m_max_mempool_size_mb = SettingTo<int64_t>(QmlCoreSettings::DisplaySettingValue(m_node, m_args, QStringLiteral("maxmempool")), DEFAULT_MAX_MEMPOOL_SIZE_MB);
124124

125-
m_script_threads = SettingToInt(QmlCoreSettings::DisplaySettingValue(m_node, m_args, QStringLiteral("par")), DEFAULT_SCRIPTCHECK_THREADS);
125+
m_script_threads = SettingTo<int64_t>(QmlCoreSettings::DisplaySettingValue(m_node, m_args, QStringLiteral("par")), DEFAULT_SCRIPTCHECK_THREADS);
126126

127127
m_external_signer_path = QString::fromStdString(SettingToString(QmlCoreSettings::DisplaySettingValue(m_node, m_args, QStringLiteral("signer")), ""));
128128

test/functional/qml_test_resetguisettings.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ def run_first_reset_onboarding(tmpdir, custom_datadir):
126126

127127
settings = load_settings(custom_datadir)
128128
assert settings.get("listen") is False, settings
129-
assert settings.get("natpmp") is True, settings
129+
assert "natpmp" not in settings, settings
130130
assert settings.get("server") is True, settings
131131
assert settings.get("proxy") == "10.0.0.1:9050", settings
132132
assert settings.get("onion") == "127.0.0.1:9150", settings
@@ -156,7 +156,7 @@ def run_second_reset_onboarding(tmpdir, custom_datadir):
156156
open_connection_settings(gui)
157157

158158
assert gui.get_property("listenSwitch", "checked") is True
159-
assert gui.get_property("natpmpSwitch", "checked") is False
159+
assert gui.get_property("natpmpSwitch", "checked") is True
160160
assert gui.get_property("serverSwitch", "checked") is False
161161
open_proxy_settings(gui)
162162
assert gui.get_property("proxyEnableSwitch", "checked") is False

test/test_options_model.cpp

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -776,28 +776,29 @@ void OptionsModelTests::natpmpAppliesLiveWithoutRestartDirty()
776776
ON_CALL(node, getPersistentSetting(_)).WillByDefault(Return(common::SettingsValue{}));
777777

778778
OptionsQmlModel model(node);
779+
QVERIFY(model.natpmp());
779780
InSequence sequence;
780781
EXPECT_CALL(node, updateRwSetting(std::string{"natpmp"},
781782
Truly([](const common::SettingsValue& value) {
782783
const std::optional<bool> parsed = SettingToBool(value);
783-
return parsed.has_value() && *parsed;
784+
return parsed.has_value() && !*parsed;
784785
})));
785-
EXPECT_CALL(node, mapPort(true));
786+
EXPECT_CALL(node, mapPort(false));
786787
EXPECT_CALL(node, updateRwSetting(std::string{"natpmp"},
787788
Truly([](const common::SettingsValue& value) {
788789
const std::optional<bool> parsed = SettingToBool(value);
789-
return value.isNull() || (parsed.has_value() && !*parsed);
790+
return value.isNull() || (parsed.has_value() && *parsed);
790791
})));
791-
EXPECT_CALL(node, mapPort(false));
792+
EXPECT_CALL(node, mapPort(true));
792793

793-
model.setNatpmp(true);
794-
QVERIFY(model.natpmp());
794+
model.setNatpmp(false);
795+
QVERIFY(!model.natpmp());
795796
QVERIFY(!model.connectionSettingsDirty());
796797
QVERIFY(!model.restartRequired());
797798
QTest::qWait(300);
798799

799-
model.setNatpmp(false);
800-
QVERIFY(!model.natpmp());
800+
model.setNatpmp(true);
801+
QVERIFY(model.natpmp());
801802
QVERIFY(!model.connectionSettingsDirty());
802803
QVERIFY(!model.restartRequired());
803804
QTest::qWait(300);
@@ -1385,7 +1386,7 @@ void OptionsModelTests::resetGuiSettingsPreviewIgnoresSelectedCustomDataDirSetti
13851386
};
13861387
QVERIFY2(preview.ok, qPrintable(preview.error));
13871388
QVERIFY(preview.values.listen);
1388-
QVERIFY(!preview.values.natpmp);
1389+
QVERIFY(preview.values.natpmp);
13891390
QVERIFY(!preview.values.server);
13901391
QVERIFY(!preview.values.proxy_enabled);
13911392
QVERIFY(!preview.values.tor_enabled);
@@ -1425,7 +1426,7 @@ void OptionsModelTests::resetGuiSettingsApplyClearsSelectedCustomDataDirSettings
14251426
QVERIFY(model.selectCustomDataDir(data_dir.path()));
14261427
QCOMPARE(model.previewError(), QString{});
14271428
QVERIFY(model.listen());
1428-
QVERIFY(!model.natpmp());
1429+
QVERIFY(model.natpmp());
14291430
QVERIFY(!model.server());
14301431
QVERIFY(!model.proxyEnabled());
14311432

@@ -3026,11 +3027,11 @@ void OptionsModelTests::commandLineOverriddenSettingsPreservePersistentValues()
30263027
model.setExternalSignerPath(QStringLiteral("changed-signer"));
30273028

30283029
QCOMPARE(SettingToBool(args.GetPersistentSetting("server")), false);
3029-
QCOMPARE(SettingToInt(args.GetPersistentSetting("prune"), -1), 0);
3030+
QCOMPARE(SettingTo<int64_t>(args.GetPersistentSetting("prune"), -1), 0);
30303031
QCOMPARE(QString::fromStdString(SettingToString(args.GetPersistentSetting("proxy"), "")), QString("127.0.0.1:9050"));
3031-
QCOMPARE(SettingToInt(args.GetPersistentSetting("dbcache"), -1), 300);
3032-
QCOMPARE(SettingToInt(args.GetPersistentSetting("par"), -1), 1);
3033-
QCOMPARE(SettingToInt(args.GetPersistentSetting("maxmempool"), -1), 300);
3032+
QCOMPARE(SettingTo<int64_t>(args.GetPersistentSetting("dbcache"), -1), 300);
3033+
QCOMPARE(SettingTo<int64_t>(args.GetPersistentSetting("par"), -1), 1);
3034+
QCOMPARE(SettingTo<int64_t>(args.GetPersistentSetting("maxmempool"), -1), 300);
30343035
QCOMPARE(QString::fromStdString(SettingToString(args.GetPersistentSetting("signer"), "")), QString("saved-signer"));
30353036
}
30363037

@@ -3153,24 +3154,24 @@ void OptionsModelTests::legacyQtSettingsMigrateToCoreSettings()
31533154
common::SettingsValue dbcache;
31543155
common::SettingsValue script_threads;
31553156
common::SettingsValue listen;
3156-
common::SettingsValue natpmp;
31573157
common::SettingsValue server;
31583158
common::SettingsValue prune;
31593159
common::SettingsValue proxy;
31603160
common::SettingsValue onion_prev;
31613161
common::SettingsValue language;
3162+
bool has_natpmp{true};
31623163
bool has_onion{true};
31633164
bool has_prune_prev{true};
31643165
args.LockSettings([&](common::Settings& core_settings) {
31653166
dbcache = core_settings.rw_settings.at("dbcache");
31663167
script_threads = core_settings.rw_settings.at("par");
31673168
listen = core_settings.rw_settings.at("listen");
3168-
natpmp = core_settings.rw_settings.at("natpmp");
31693169
server = core_settings.rw_settings.at("server");
31703170
prune = core_settings.rw_settings.at("prune");
31713171
proxy = core_settings.rw_settings.at("proxy");
31723172
onion_prev = core_settings.rw_settings.at("onion-prev");
31733173
language = core_settings.rw_settings.at("lang");
3174+
has_natpmp = core_settings.rw_settings.count("natpmp") > 0;
31743175
has_onion = core_settings.rw_settings.count("onion") > 0;
31753176
has_prune_prev = core_settings.rw_settings.count("prune-prev") > 0;
31763177
});
@@ -3180,7 +3181,7 @@ void OptionsModelTests::legacyQtSettingsMigrateToCoreSettings()
31803181
QVERIFY(script_threads.isStr());
31813182
QCOMPARE(QString::fromStdString(script_threads.get_str()), QStringLiteral("12"));
31823183
QCOMPARE(SettingToBool(listen), false);
3183-
QCOMPARE(SettingToBool(natpmp), true);
3184+
QVERIFY(!has_natpmp);
31843185
QCOMPARE(SettingToBool(server), true);
31853186
QVERIFY(prune.isStr());
31863187
QCOMPARE(QString::fromStdString(prune.get_str()), QString::number(QmlCoreSettings::PruneGBToMiB(10)));

0 commit comments

Comments
 (0)