aboutsummaryrefslogtreecommitdiffhomepage
path: root/tdutils/test
diff options
context:
space:
mode:
authorlevlam <levlam@telegram.org>2023-08-18 15:06:16 +0300
committerlevlam <levlam@telegram.org>2023-08-18 15:06:16 +0300
commit40378be4873958f350ba1c63e850b73d1e0aa1d7 (patch)
tree29201dc2a27e7a34d1c4d79ebca7360eb6878153 /tdutils/test
parent203e8cf9c27ee703a8a90b225fc58c2b687bfe6d (diff)
Delete deprecated JsonObject accessors.
Diffstat (limited to 'tdutils/test')
-rw-r--r--tdutils/test/json.cpp126
1 files changed, 0 insertions, 126 deletions
diff --git a/tdutils/test/json.cpp b/tdutils/test/json.cpp
index fedba6686..17d30a81b 100644
--- a/tdutils/test/json.cpp
+++ b/tdutils/test/json.cpp
@@ -92,132 +92,6 @@ TEST(JSON, kphp) {
"qrstuvwxyz\"]],\"one_time_keyboard\":true}");
}
-TEST(JSON, get_json_object_field) {
- const td::string encoded_object =
- "{\"null\":null,\"bool\":true,\"int\":\"1\",\"int2\":2,\"long\":\"123456789012\",\"long2\":2123456789012,"
- "\"double\":12345678901.1,\"string\":\"string\",\"string2\":12345e+1,\"array\":[],\"object\":{}}";
- {
- td::string encoded_object_copy = encoded_object;
- auto value = td::json_decode(encoded_object_copy).move_as_ok();
- auto &object = value.get_object();
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "null")), "null");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "bool")), "true");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "bool")), "null");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "int")), "\"1\"");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "int2")), "2");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "int3")), "null");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "long")), "\"123456789012\"");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "long2")), "2123456789012");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "double")), "12345678901.1");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "string")), "\"string\"");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "string2")), "12345e+1");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "array")), "[]");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "object")), "{}");
- ASSERT_EQ(td::json_encode<td::string>(td::get_json_object_field_force(object, "")), "null");
- }
-
- {
- td::string encoded_object_copy = encoded_object;
- auto value = td::json_decode(encoded_object_copy).move_as_ok();
- auto &object = value.get_object();
- ASSERT_TRUE(td::get_json_object_field(object, "int", td::JsonValue::Type::Number).is_error());
- ASSERT_TRUE(td::get_json_object_field(object, "int", td::JsonValue::Type::Number).is_error());
- ASSERT_TRUE(td::get_json_object_field(object, "int2", td::JsonValue::Type::Number).is_ok());
- ASSERT_TRUE(td::get_json_object_field(object, "int2", td::JsonValue::Type::Number).is_error());
- ASSERT_TRUE(td::get_json_object_field(object, "int3", td::JsonValue::Type::Number).is_ok());
- ASSERT_TRUE(td::get_json_object_field(object, "int3", td::JsonValue::Type::Null).is_ok());
- ASSERT_EQ(td::get_json_object_field(object, "int", td::JsonValue::Type::String).ok().get_string(), "1");
- ASSERT_TRUE(td::get_json_object_field(object, "int", td::JsonValue::Type::Number).is_error());
- ASSERT_EQ(td::get_json_object_field(object, "int", td::JsonValue::Type::Null).ok().type(),
- td::JsonValue::Type::Null);
-
- ASSERT_TRUE(td::get_json_object_field(object, "long", td::JsonValue::Type::Number, false).is_error());
- ASSERT_TRUE(td::get_json_object_field(object, "long", td::JsonValue::Type::Number, false).is_error());
- ASSERT_TRUE(td::get_json_object_field(object, "long2", td::JsonValue::Type::Number, false).is_ok());
- ASSERT_TRUE(td::get_json_object_field(object, "long2", td::JsonValue::Type::Number, false).is_error());
- ASSERT_TRUE(td::get_json_object_field(object, "long3", td::JsonValue::Type::Number, false).is_error());
- ASSERT_TRUE(td::get_json_object_field(object, "long3", td::JsonValue::Type::Null, false).is_error());
- ASSERT_EQ(td::get_json_object_field(object, "long", td::JsonValue::Type::String, false).ok().get_string(),
- "123456789012");
- ASSERT_TRUE(td::get_json_object_field(object, "long", td::JsonValue::Type::Number, false).is_error());
- ASSERT_EQ(td::get_json_object_field(object, "long", td::JsonValue::Type::Null, false).ok().type(),
- td::JsonValue::Type::Null);
- }
-
- td::string encoded_object_copy = encoded_object;
- auto value = td::json_decode(encoded_object_copy).move_as_ok();
- const auto &object = value.get_object();
- ASSERT_TRUE(td::has_json_object_field(object, "null"));
- ASSERT_TRUE(td::has_json_object_field(object, "object"));
- ASSERT_TRUE(!td::has_json_object_field(object, ""));
- ASSERT_TRUE(!td::has_json_object_field(object, "objec"));
- ASSERT_TRUE(!td::has_json_object_field(object, "object2"));
-
- ASSERT_TRUE(td::get_json_object_bool_field(object, "int").is_error());
- ASSERT_EQ(td::get_json_object_bool_field(object, "bool").ok(), true);
- ASSERT_EQ(td::get_json_object_bool_field(object, "bool").ok(), true);
- ASSERT_EQ(td::get_json_object_bool_field(object, "bool", false).ok(), true);
- ASSERT_EQ(td::get_json_object_bool_field(object, "bool3").ok(), false);
- ASSERT_EQ(td::get_json_object_bool_field(object, "bool4", true, true).ok(), true);
- ASSERT_TRUE(td::get_json_object_bool_field(object, "bool5", false, true).is_error());
-
- ASSERT_TRUE(td::get_json_object_int_field(object, "null").is_error());
- ASSERT_EQ(td::get_json_object_int_field(object, "int").ok(), 1);
- ASSERT_EQ(td::get_json_object_int_field(object, "int").ok(), 1);
- ASSERT_EQ(td::get_json_object_int_field(object, "int", false).ok(), 1);
- ASSERT_EQ(td::get_json_object_int_field(object, "int2").ok(), 2);
- ASSERT_EQ(td::get_json_object_int_field(object, "int2").ok(), 2);
- ASSERT_EQ(td::get_json_object_int_field(object, "int2", false).ok(), 2);
- ASSERT_EQ(td::get_json_object_int_field(object, "int3").ok(), 0);
- ASSERT_EQ(td::get_json_object_int_field(object, "int4", true, 5).ok(), 5);
- ASSERT_TRUE(td::get_json_object_int_field(object, "int5", false, 5).is_error());
- ASSERT_EQ(td::get_json_object_int_field(object, "long").is_error(), true);
- ASSERT_EQ(td::get_json_object_int_field(object, "long2").is_error(), true);
-
- ASSERT_TRUE(td::get_json_object_long_field(object, "null").is_error());
- ASSERT_EQ(td::get_json_object_long_field(object, "long").ok(), 123456789012);
- ASSERT_EQ(td::get_json_object_long_field(object, "long").ok(), 123456789012);
- ASSERT_EQ(td::get_json_object_long_field(object, "long", false).ok(), 123456789012);
- ASSERT_EQ(td::get_json_object_long_field(object, "long2").ok(), 2123456789012);
- ASSERT_EQ(td::get_json_object_long_field(object, "long2").ok(), 2123456789012);
- ASSERT_EQ(td::get_json_object_long_field(object, "long2", false).ok(), 2123456789012);
- ASSERT_EQ(td::get_json_object_long_field(object, "long3").ok(), 0);
- ASSERT_EQ(td::get_json_object_long_field(object, "long4", true, 5).ok(), 5);
- ASSERT_TRUE(td::get_json_object_long_field(object, "long5", false, 5).is_error());
- ASSERT_EQ(td::get_json_object_long_field(object, "int").ok(), 1);
- ASSERT_EQ(td::get_json_object_long_field(object, "int2").ok(), 2);
-
- auto are_equal_double = [](double lhs, double rhs) {
- return rhs - 1e-3 < lhs && lhs < rhs + 1e-3;
- };
-
- ASSERT_TRUE(td::get_json_object_double_field(object, "null").is_error());
- ASSERT_TRUE(are_equal_double(td::get_json_object_double_field(object, "double").ok(), 12345678901.1));
- ASSERT_TRUE(are_equal_double(td::get_json_object_double_field(object, "double").ok(), 12345678901.1));
- ASSERT_TRUE(are_equal_double(td::get_json_object_double_field(object, "double", false).ok(), 12345678901.1));
- ASSERT_TRUE(are_equal_double(td::get_json_object_double_field(object, "long2").ok(), 2123456789012.0));
- ASSERT_TRUE(are_equal_double(td::get_json_object_double_field(object, "long2").ok(), 2123456789012.0));
- ASSERT_TRUE(are_equal_double(td::get_json_object_double_field(object, "long2", false).ok(), 2123456789012.0));
- ASSERT_TRUE(are_equal_double(td::get_json_object_double_field(object, "double3").ok(), 0.0));
- ASSERT_TRUE(are_equal_double(td::get_json_object_double_field(object, "double4", true, -5.23).ok(), -5.23));
- ASSERT_TRUE(td::get_json_object_double_field(object, "double5", false, 5).is_error());
- ASSERT_TRUE(td::get_json_object_double_field(object, "int").is_error());
- ASSERT_TRUE(are_equal_double(td::get_json_object_double_field(object, "int2").ok(), 2));
-
- ASSERT_TRUE(td::get_json_object_string_field(object, "null").is_error());
- ASSERT_EQ(td::get_json_object_string_field(object, "string").ok(), "string");
- ASSERT_EQ(td::get_json_object_string_field(object, "string").ok(), "string");
- ASSERT_EQ(td::get_json_object_string_field(object, "string", false).ok(), "string");
- ASSERT_EQ(td::get_json_object_string_field(object, "string2").ok(), "12345e+1");
- ASSERT_EQ(td::get_json_object_string_field(object, "string2").ok(), "12345e+1");
- ASSERT_EQ(td::get_json_object_string_field(object, "string2", false).ok(), "12345e+1");
- ASSERT_EQ(td::get_json_object_string_field(object, "string3").ok(), td::string());
- ASSERT_EQ(td::get_json_object_string_field(object, "string4", true, "abacaba").ok(), "abacaba");
- ASSERT_TRUE(td::get_json_object_string_field(object, "string5", false, "test").is_error());
- ASSERT_EQ(td::get_json_object_string_field(object, "int").ok(), "1");
- ASSERT_EQ(td::get_json_object_string_field(object, "int2").ok(), "2");
-}
-
TEST(JSON, json_object_get_field) {
const td::string encoded_object =
"{\"null\":null,\"bool\":true,\"int\":\"1\",\"int2\":2,\"long\":\"123456789012\",\"long2\":2123456789012,"