mirror of
https://github.com/Tencent/rapidjson.git
synced 2025-03-10 03:29:59 +01:00
58 lines
1.2 KiB
C++
58 lines
1.2 KiB
C++
![]() |
#include "perftest.h"
|
||
|
|
||
|
#if TEST_JSONCPP
|
||
|
|
||
|
#include "jsoncpp/src/lib_json/json_reader.cpp"
|
||
|
#include "jsoncpp/src/lib_json/json_value.cpp"
|
||
|
#include "jsoncpp/src/lib_json/json_writer.cpp"
|
||
|
|
||
|
using namespace Json;
|
||
|
|
||
|
class JsonCpp : public PerfTest {
|
||
|
public:
|
||
|
virtual void SetUp() {
|
||
|
PerfTest::SetUp();
|
||
|
Reader reader;
|
||
|
ASSERT_TRUE(reader.parse(json_, root_));
|
||
|
}
|
||
|
|
||
|
protected:
|
||
|
Value root_;
|
||
|
};
|
||
|
|
||
|
TEST_F(JsonCpp, ReaderParse) {
|
||
|
for (int i = 0; i < kTrialCount; i++) {
|
||
|
Value root;
|
||
|
Reader reader;
|
||
|
ASSERT_TRUE(reader.parse(json_, root));
|
||
|
}
|
||
|
}
|
||
|
|
||
|
TEST_F(JsonCpp, FastWriter) {
|
||
|
for (int i = 0; i < kTrialCount; i++) {
|
||
|
FastWriter writer;
|
||
|
std::string str = writer.write(root_);
|
||
|
//if (i == 0)
|
||
|
// std::cout << str.length() << std::endl;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
TEST_F(JsonCpp, StyledWriter) {
|
||
|
for (int i = 0; i < kTrialCount; i++) {
|
||
|
StyledWriter writer;
|
||
|
std::string str = writer.write(root_);
|
||
|
//if (i == 0)
|
||
|
// std::cout << str.length() << std::endl;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
TEST_F(JsonCpp, Whitespace) {
|
||
|
for (int i = 0; i < kTrialCount; i++) {
|
||
|
Value root;
|
||
|
Reader reader;
|
||
|
ASSERT_TRUE(reader.parse(whitespace_, root));
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#endif // TEST_JSONCPP
|