MCPcopy Create free account
hub / github.com/bitcoin/bitcoin / CheckValue

Method CheckValue

src/test/argsman_tests.cpp:95–152  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

93 };
94
95 void CheckValue(unsigned int flags, const char* arg, const Expect& expect)
96 {
97 TestArgsManager test;
98 test.SetupArgs({{"-value", flags}});
99 const char* argv[] = {"ignored", arg};
100 std::string error;
101 bool success = test.ParseParameters(arg ? 2 : 1, argv, error);
102
103 BOOST_CHECK_EQUAL(test.GetSetting("-value").write(), expect.setting.write());
104 auto settings_list = test.GetSettingsList("-value");
105 if (expect.setting.isNull() || expect.setting.isFalse()) {
106 BOOST_CHECK_EQUAL(settings_list.size(), 0U);
107 } else {
108 BOOST_CHECK_EQUAL(settings_list.size(), 1U);
109 BOOST_CHECK_EQUAL(settings_list[0].write(), expect.setting.write());
110 }
111
112 if (expect.error) {
113 BOOST_CHECK(!success);
114 BOOST_CHECK_NE(error.find(expect.error), std::string::npos);
115 } else {
116 BOOST_CHECK(success);
117 BOOST_CHECK_EQUAL(error, "");
118 }
119
120 if (expect.default_string) {
121 BOOST_CHECK_EQUAL(test.GetArg("-value", "zzzzz"), "zzzzz");
122 } else if (expect.string_value) {
123 BOOST_CHECK_EQUAL(test.GetArg("-value", "zzzzz"), expect.string_value);
124 } else {
125 BOOST_CHECK(!success);
126 }
127
128 if (expect.default_int) {
129 BOOST_CHECK_EQUAL(test.GetIntArg("-value", 99999), 99999);
130 } else if (expect.int_value) {
131 BOOST_CHECK_EQUAL(test.GetIntArg("-value", 99999), *expect.int_value);
132 } else {
133 BOOST_CHECK(!success);
134 }
135
136 if (expect.default_bool) {
137 BOOST_CHECK_EQUAL(test.GetBoolArg("-value", false), false);
138 BOOST_CHECK_EQUAL(test.GetBoolArg("-value", true), true);
139 } else if (expect.bool_value) {
140 BOOST_CHECK_EQUAL(test.GetBoolArg("-value", false), *expect.bool_value);
141 BOOST_CHECK_EQUAL(test.GetBoolArg("-value", true), *expect.bool_value);
142 } else {
143 BOOST_CHECK(!success);
144 }
145
146 if (expect.list_value) {
147 auto l = test.GetArgs("-value");
148 BOOST_CHECK_EQUAL_COLLECTIONS(l.begin(), l.end(), expect.list_value->begin(), expect.list_value->end());
149 } else {
150 BOOST_CHECK(!success);
151 }
152 }

Callers

nothing calls this directly

Calls 14

SetupArgsMethod · 0.80
ParseParametersMethod · 0.80
GetSettingMethod · 0.80
GetSettingsListMethod · 0.80
isNullMethod · 0.80
isFalseMethod · 0.80
findMethod · 0.80
GetArgMethod · 0.80
GetBoolArgMethod · 0.80
GetArgsMethod · 0.80
writeMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected