Skip to content

Commit 107db98

Browse files
committed
Add ::push_back(double) method for feature parity.
Add tests for this and other push_back()'s.
1 parent d415300 commit 107db98

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

include/univalue.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,10 @@ class UniValue {
105105
UniValue tmpVal(val_);
106106
return push_back(tmpVal);
107107
}
108+
bool push_back(double val_) {
109+
UniValue tmpVal(val_);
110+
return push_back(tmpVal);
111+
}
108112
bool push_backV(const std::vector<UniValue>& vec);
109113

110114
bool pushKV(const std::string& key, const UniValue& val);

test/object.cpp

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,14 +205,23 @@ BOOST_AUTO_TEST_CASE(univalue_array)
205205

206206
BOOST_CHECK(arr.push_backV(vec));
207207

208+
BOOST_CHECK(arr.push_back((uint64_t) 400ULL));
209+
BOOST_CHECK(arr.push_back((int64_t) -400LL));
210+
BOOST_CHECK(arr.push_back((int) -401));
211+
BOOST_CHECK(arr.push_back(-40.1));
212+
208213
BOOST_CHECK_EQUAL(arr.empty(), false);
209-
BOOST_CHECK_EQUAL(arr.size(), 5);
214+
BOOST_CHECK_EQUAL(arr.size(), 9);
210215

211216
BOOST_CHECK_EQUAL(arr[0].getValStr(), "1023");
212217
BOOST_CHECK_EQUAL(arr[1].getValStr(), "zippy");
213218
BOOST_CHECK_EQUAL(arr[2].getValStr(), "pippy");
214219
BOOST_CHECK_EQUAL(arr[3].getValStr(), "boing");
215220
BOOST_CHECK_EQUAL(arr[4].getValStr(), "going");
221+
BOOST_CHECK_EQUAL(arr[5].getValStr(), "400");
222+
BOOST_CHECK_EQUAL(arr[6].getValStr(), "-400");
223+
BOOST_CHECK_EQUAL(arr[7].getValStr(), "-401");
224+
BOOST_CHECK_EQUAL(arr[8].getValStr(), "-40.1");
216225

217226
BOOST_CHECK_EQUAL(arr[999].getValStr(), "");
218227

0 commit comments

Comments
 (0)