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('>');
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// @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
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -143,6 +115,92 @@ TRI_json_t* EnumerateCollectionPlan::toJson (TRI_memory_zone_t* zone) {
|
|||
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:
|
||||
// mode: outline-minor
|
||||
// outline-regexp: "^\\(/// @brief\\|/// {@inheritDoc}\\|/// @addtogroup\\|// --SECTION--\\|/// @\\}\\)"
|
||||
|
|
Loading…
Reference in New Issue