Go to the documentation of this file.
23 #include <gmock/gmock.h>
24 #include <gtest/gtest.h>
39 ASSERT_EQ(actual.size(), expected.size());
40 auto actual_it = actual.begin();
41 for (
const auto& p : expected) {
49 ASSERT_EQ(actual.size(), expected.size());
50 for (
size_t i = 0;
i < expected.size(); ++
i) {
57 switch (expected.
type()) {
95 RunSuccessTest(
"\"\\u0020\\\\\\u0010\\u000a\\u000D\"",
" \\\u0010\n\r",
96 "\" \\\\\\u0010\\n\\r\"");
101 "\"\\u00df\\u00e2\\u00f1\\u0107\\u0bf5\\u21d2\"");
102 RunSuccessTest(
"\"\\u00df\\u00e2\\u00f1\\u0107\\u0bf5\\u21d2\"",
"ßâñć௵⇒",
103 "\"\\u00df\\u00e2\\u00f1\\u0107\\u0bf5\\u21d2\"");
106 "\"\\ud834\\udd1e\"");
108 "\"\\ud834\\udd1e\"");
111 "{\"\\ud834\\udd1e\":0}");
124 TEST(
Json, EscapesAndControlCharactersInKeyStrings) {
125 RunSuccessTest(
" { \"\\u007f\x7f\\n\\r\\\"\\f\\b\\\\a , b\": 1, \"\": 0 } ",
127 {
"\u007f\u007f\n\r\"\f\b\\a , b", 1},
130 "{\"\":0,\"\\u007f\\u007f\\n\\r\\\"\\f\\b\\\\a , b\":1}");
143 Json(
"0.0123",
true),
144 Json(
"123.456",
true),
146 "[0,42,0.0123,123.456]");
150 Json(
"-53.235e-31",
true),
151 Json(
"0.3e+3",
true),
153 "[1e4,-53.235e-31,0.3e+3]");
163 "[true,false,null]");
291 int main(
int argc,
char** argv) {
std::vector< Json > Array
static void Dump(StringPiece pattern, Regexp::ParseFlags flags, std::string *forward, std::string *reverse)
void RunParseFailureTest(const char *input)
const Object & object_value() const
const Array & array_value() const
void ValidateArray(const Json::Array &actual, const Json::Array &expected)
def c_str(s, encoding='ascii')
JSON (JavaScript Object Notation).
#define EXPECT_NE(val1, val2)
GPRAPI void gpr_log(const char *file, int line, gpr_log_severity severity, const char *format,...) GPR_PRINT_FORMAT_CHECK(4
int RUN_ALL_TESTS() GTEST_MUST_USE_RESULT_
void ValidateValue(const Json &actual, const Json &expected)
void ValidateObject(const Json::Object &actual, const Json::Object &expected)
static Json Parse(absl::string_view json_str, grpc_error_handle *error)
std::map< std::string, Json > Object
GTEST_API_ void InitGoogleTest(int *argc, char **argv)
std::string grpc_error_std_string(grpc_error_handle error)
const std::string & string_value() const
#define GRPC_ERROR_UNREF(err)
void RunSuccessTest(const char *input, const Json &expected, const char *expected_output)
int main(int argc, char **argv)
std::string Dump(int indent=0) const
#define ASSERT_EQ(val1, val2)
grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:00:25