/
nicodim4
/
ArduinoJson
Обзор
Документация
Войти
/
nicodim4
/
ArduinoJson
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
7.x
extras/tests/MsgPackSerializer/misc.cpp
46 строк
1 KB
Benoit Blanchon
Remove capacity from `JsonDocument`'s constructor
18 июл 2023, 10:08
18 июл 2023, 10:08
0f319e7
Код
Авторство
О чём код?
#include <ArduinoJson.h> #include <catch.hpp> #include <limits> template <typename T> void check(T value, const std::string& expected) { JsonDocument doc; doc.to<JsonVariant>().set(value); char buffer[256] = ""; size_t returnValue = serializeMsgPack(doc, buffer, sizeof(buffer)); REQUIRE(expected == buffer); REQUIRE(expected.size() == returnValue); } TEST_CASE("serializeMsgPack(MemberProxy)") { JsonDocument doc; deserializeJson(doc, "{\"hello\":42}"); JsonObject obj = doc.as<JsonObject>(); std::string result; serializeMsgPack(obj["hello"], result); REQUIRE(result == "*"); } TEST_CASE("serializeMsgPack(ElementProxy)") { JsonDocument doc; deserializeJson(doc, "[42]"); JsonArray arr = doc.as<JsonArray>(); std::string result; serializeMsgPack(arr[0], result); REQUIRE(result == "*"); } TEST_CASE("serializeMsgPack(JsonVariantSubscript)") { JsonDocument doc; deserializeJson(doc, "[42]"); JsonVariant var = doc.as<JsonVariant>(); std::string result; serializeMsgPack(var[0], result); REQUIRE(result == "*"); }