mirror of https://gitee.com/bigwinds/arangodb
Change Json wrapper class test.
This commit is contained in:
parent
6a1203405f
commit
e6da8c63e2
|
@ -101,34 +101,6 @@ void ExecutionPlan::appendAsString (std::string& st, int indent) {
|
||||||
st.push_back('>');
|
st.push_back('>');
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
/// @brief test function
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
void testExecutionPlans () {
|
|
||||||
ExecutionPlan* e = new ExecutionPlan();
|
|
||||||
ExecutionPlan* f = new ExecutionPlan(e);
|
|
||||||
std::string st;
|
|
||||||
e->appendAsString(st, 0);
|
|
||||||
std::cout << "e as string:\n" << st << std::endl;
|
|
||||||
st.clear();
|
|
||||||
f->appendAsString(st, 0);
|
|
||||||
std::cout << "f as string:\n" << st << std::endl;
|
|
||||||
TRI_json_t* json = e->toJson(TRI_UNKNOWN_MEM_ZONE);
|
|
||||||
if (json != nullptr) {
|
|
||||||
std::cout << "e as JSON:\n" <<
|
|
||||||
triagens::basics::JsonHelper::toString(json) << std::endl;
|
|
||||||
}
|
|
||||||
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
|
||||||
json = f->toJson(TRI_UNKNOWN_MEM_ZONE);
|
|
||||||
if (json != nullptr) {
|
|
||||||
std::cout << "f as JSON:\n" <<
|
|
||||||
triagens::basics::JsonHelper::toString(json) << std::endl;
|
|
||||||
}
|
|
||||||
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
|
||||||
delete f; // should not leave a leak
|
|
||||||
}
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief toJson, for EnumerateCollectionPlan
|
/// @brief toJson, for EnumerateCollectionPlan
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
@ -143,6 +115,92 @@ TRI_json_t* EnumerateCollectionPlan::toJson (TRI_memory_zone_t* zone) {
|
||||||
return json;
|
return json;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
/// @brief test function
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
using namespace triagens::basics;
|
||||||
|
|
||||||
|
void testExecutionPlans () {
|
||||||
|
ExecutionPlan* e = new ExecutionPlan();
|
||||||
|
ExecutionPlan* f = new ExecutionPlan(e);
|
||||||
|
std::string st;
|
||||||
|
e->appendAsString(st, 0);
|
||||||
|
std::cout << "e as string:\n" << st << std::endl;
|
||||||
|
st.clear();
|
||||||
|
f->appendAsString(st, 0);
|
||||||
|
std::cout << "f as string:\n" << st << std::endl;
|
||||||
|
TRI_json_t* json = e->toJson(TRI_UNKNOWN_MEM_ZONE);
|
||||||
|
if (json != nullptr) {
|
||||||
|
std::cout << "e as JSON:\n" <<
|
||||||
|
JsonHelper::toString(json) << std::endl;
|
||||||
|
}
|
||||||
|
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
||||||
|
json = f->toJson(TRI_UNKNOWN_MEM_ZONE);
|
||||||
|
if (json != nullptr) {
|
||||||
|
std::cout << "f as JSON:\n" <<
|
||||||
|
JsonHelper::toString(json) << std::endl;
|
||||||
|
}
|
||||||
|
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
||||||
|
delete f; // should not leave a leak
|
||||||
|
|
||||||
|
json = Json(12);
|
||||||
|
std::cout << JsonHelper::toString(json) << std::endl;
|
||||||
|
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
||||||
|
|
||||||
|
json = Json(true);
|
||||||
|
std::cout << JsonHelper::toString(json) << std::endl;
|
||||||
|
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
||||||
|
|
||||||
|
json = Json(Json::Null);
|
||||||
|
std::cout << JsonHelper::toString(json) << std::endl;
|
||||||
|
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
||||||
|
|
||||||
|
json = Json(Json::String);
|
||||||
|
std::cout << JsonHelper::toString(json) << std::endl;
|
||||||
|
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
||||||
|
|
||||||
|
json = Json(Json::List);
|
||||||
|
std::cout << JsonHelper::toString(json) << std::endl;
|
||||||
|
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
||||||
|
|
||||||
|
json = Json(Json::Array);
|
||||||
|
std::cout << JsonHelper::toString(json) << std::endl;
|
||||||
|
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
||||||
|
|
||||||
|
json = Json(Json::Array, 10)
|
||||||
|
("myinteger", Json(12))
|
||||||
|
("mystring", Json("hallo"))
|
||||||
|
("mybool", Json(false))
|
||||||
|
("mynull", Json(Json::Null))
|
||||||
|
("mylist", Json(Json::List, 3)
|
||||||
|
(Json(1))
|
||||||
|
(Json(2))
|
||||||
|
(Json(3)))
|
||||||
|
("myarray", Json(Json::Array, 2)
|
||||||
|
("a",Json("hallo"))
|
||||||
|
("b",Json(13)));
|
||||||
|
std::cout << JsonHelper::toString(json) << std::endl;
|
||||||
|
TRI_FreeJson(TRI_UNKNOWN_MEM_ZONE, json);
|
||||||
|
|
||||||
|
Json j(Json::Array);
|
||||||
|
j("a", Json(12))
|
||||||
|
("b", Json(true))
|
||||||
|
("c", Json(Json::List)
|
||||||
|
(Json(1))(Json(2))(Json(3)))
|
||||||
|
("d", Json(Json::Array)
|
||||||
|
("x", Json(12))
|
||||||
|
("y", Json(true)));
|
||||||
|
std::cout << j.toString() << std::endl;
|
||||||
|
|
||||||
|
std::cout << j.get("a").toString() << std::endl;
|
||||||
|
|
||||||
|
Json k = j.get("c");
|
||||||
|
Json l = k.at(2);
|
||||||
|
|
||||||
|
std::cout << l.toString() << std::endl;
|
||||||
|
}
|
||||||
|
|
||||||
// Local Variables:
|
// Local Variables:
|
||||||
// mode: outline-minor
|
// mode: outline-minor
|
||||||
// outline-regexp: "^\\(/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|// --SECTION--\\|/// @\\}\\)"
|
// outline-regexp: "^\\(/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|// --SECTION--\\|/// @\\}\\)"
|
||||||
|
|
Loading…
Reference in New Issue