20 #include <ripple/json/Object.h>
21 #include <test/json/TestOutputSuite.h>
22 #include <ripple/beast/unit_test.h>
46 TestOutputSuite::expectResult (expected);
66 root[
"hello"] =
"world";
68 root[
"awake"] =
false;
69 root[
"temperature"] = 98.6;
73 "{\"hello\":\"world\","
76 "\"temperature\":98.6}");
97 auto array = root.setArray (
"ar");
105 auto obj = root.setObject (
"obj");
106 obj[
"hello"] =
"world";
114 root[
"obj2"] = value;
119 auto case1 =
"{\"ar\":[23,false,23.5],"
120 "\"obj\":{\"hello\":\"world\"},"
121 "\"obj2\":{\"h\":\"w\",\"f\":false}}";
122 auto case2 =
"{\"ar\":[23,false,23.5],"
123 "\"obj\":{\"hello\":\"world\"},"
124 "\"obj2\":{\"f\":false,\"h\":\"w\"}}";
138 auto array = root.setArray (
"ar");
140 array.append (
false);
145 root.setObject (
"obj")[
"hello"] =
"world";
149 auto object = root.setObject (
"obj2");
150 object.set(
"h",
"w");
151 object.set(
"f",
false);
155 "{\"ar\":[23,false,23.5],"
156 "\"obj\":{\"hello\":\"world\"},"
157 "\"obj2\":{\"h\":\"w\",\"f\":false}}");
163 setup (
"object failure assign");
165 auto obj = root.setObject (
"o1");
169 setup (
"object failure object");
171 auto obj = root.setObject (
"o1");
175 setup (
"object failure Array");
177 auto obj = root.setArray (
"o1");
185 setup (
"array failure append");
187 auto array = root.setArray (
"array");
188 auto subarray = array.appendArray ();
189 auto fail = [&]() { array.append (
"fail"); };
193 setup (
"array failure appendArray");
195 auto array = root.setArray (
"array");
196 auto subarray = array.appendArray ();
197 auto fail = [&]() { array.appendArray (); };
201 setup (
"array failure appendObject");
203 auto array = root.setArray (
"array");
204 auto subarray = array.appendArray ();
205 auto fail = [&]() { array.appendObject (); };
212 setup (
"repeating keys");
214 root.set (
"foo",
"bar");
217 auto set_again = [&]() { root.set (
"foo",
"bar"); };