Skip to content
Bitcoin Roots

v30.3-roots.1 · Commit 5: [PATCH 05/68] feat(qt): preserve Roots identity and GUI support on Core 30.3

src/qt/test/optiontests.cpp

Before: src/qt/test/optiontests.cpp · After: src/qt/test/optiontests.cpp

File metadata
index f8a1da84121d2a2825aa4a2097f5dfd229b46c82..de701edc144906aa7b7df2cab8892cb53ff5bb02 100644

Download original patch · Release notes

Diff rows 1–37 of 37. Line numbers refer to the original before/after files.

+ Added− RemovedUnmarked lines are context.

Scroll the code area horizontally to read long lines. Before is on the left; after is on the right. Unified view fits narrow screens more easily.

src/qt/test/optiontests.cpp CHANGED
@@ -7,11 +7,14 @@
7
  #include <common/args.h>
8
  #include <init.h>
9
  #include <qt/bitcoin.h>
 
10
  #include <qt/guiutil.h>
11
  #include <qt/test/optiontests.h>
12
  #include <test/util/setup_common.h>
13
 
 
14
  #include <QSettings>
 
15
  #include <QTest>
16
 
17
  #include <univalue.h>
@@ -146,3 +149,23 @@ void OptionTests::extractFilter()
146
  filter = QString("Image (*.png *.jpg)");
147
  QCOMPARE(GUIUtil::ExtractFirstSuffixFromFilter(filter), "png");
148
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  #include <common/args.h>
8
  #include <init.h>
9
  #include <qt/bitcoin.h>
10
+ #include <qt/bitcoinunits.h>
11
  #include <qt/guiutil.h>
12
  #include <qt/test/optiontests.h>
13
  #include <test/util/setup_common.h>
14
 
15
+ #include <QFile>
16
  #include <QSettings>
17
+ #include <QTemporaryDir>
18
  #include <QTest>
19
 
20
  #include <univalue.h>
 
149
  filter = QString("Image (*.png *.jpg)");
150
  QCOMPARE(GUIUtil::ExtractFirstSuffixFromFilter(filter), "png");
151
  }
152
+
153
+ void OptionTests::displayUnitPersistence()
154
+ {
155
+ OptionsModel options{m_node};
156
+ QTemporaryDir settings_dir;
157
+ QVERIFY(settings_dir.isValid());
158
+ QSettings output{settings_dir.filePath("units.ini"), QSettings::IniFormat};
159
+ for (const BitcoinUnit unit : BitcoinUnits::availableUnits()) {
160
+ output.setValue("display-unit", QVariant::fromValue(unit));
161
+ output.sync();
162
+ QCOMPARE(output.status(), QSettings::NoError);
163
+ // A different filename forces a disk read rather than QSettings' cache.
164
+ const QString copy_path{settings_dir.filePath(QString::number(static_cast<int>(unit)) + ".ini")};
165
+ QVERIFY(QFile::copy(output.fileName(), copy_path));
166
+ QSettings input{copy_path, QSettings::IniFormat};
167
+ const QVariant restored{input.value("display-unit")};
168
+ QCOMPARE(restored.userType(), qMetaTypeId<BitcoinUnit>());
169
+ QCOMPARE(restored.value<BitcoinUnit>(), unit);
170
+ }
171
+ }