Removed default capacity of DynamicJsonDocument

This commit is contained in:
Benoit Blanchon
2019-01-14 10:32:19 +01:00
parent f0784d3b41
commit 9ac2ac303c
73 changed files with 163 additions and 155 deletions

View File

@ -6,6 +6,23 @@ HEAD
* Import functions in the ArduinoJson namespace to get clearer errors
* Improved syntax highlighting in Arduino IDE
* Removed default capacity of `DynamicJsonDocument`
> ### BREAKING CHANGES
>
> The parameter to the constructor of `DynamicJsonDocument` is now mandatory
>
> Old code:
>
> ```c++
> DynamicJsonDocument doc;
> ```
>
> New code:
>
> ```c++
> DynamicJsonDocument doc(1024);
> ```
v6.7.0-beta (2018-12-07)
-----------

View File

@ -60,7 +60,7 @@ Here is a program that parses a JSON document with ArduinoJson.
```c++
char json[] = "{\"sensor\":\"gps\",\"time\":1351824120,\"data\":[48.756080,2.302038]}";
DynamicJsonDocument doc;
DynamicJsonDocument doc(1024);
deserializeJson(doc, json);
JsonObjectRef root = doc.as<JsonObject>();
@ -77,7 +77,7 @@ See the [tutorial on arduinojson.org](https://arduinojson.org/doc/decoding/?utm_
Here is a program that generates a JSON document with ArduinoJson:
```c++
DynamicJsonDocument doc;
DynamicJsonDocument doc(1024);
JsonObject root = doc.to<JsonObject>();
root["sensor"] = "gps";

View File

@ -14,7 +14,7 @@
void setup() {
#ifdef PROGMEM // <- check that Flash strings are supported
DynamicJsonDocument doc;
DynamicJsonDocument doc(1024);
// You can use a Flash String as your JSON input.
// WARNING: the content of the Flash String will be duplicated in the

View File

@ -11,7 +11,7 @@
#include <ArduinoJson.h>
void setup() {
DynamicJsonDocument doc;
DynamicJsonDocument doc(1024);
// You can use a String as your JSON input.
// WARNING: the content of the String will be duplicated in the JsonBuffer.

View File

@ -1,7 +1,7 @@
#include <ArduinoJson.h>
extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
DeserializationError error = deserializeJson(doc, data, size);
if (!error) {
std::string json;

View File

@ -1,7 +1,7 @@
#include <ArduinoJson.h>
extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
DeserializationError error = deserializeMsgPack(doc, data, size);
if (!error) {
std::string json;

View File

@ -53,11 +53,6 @@
#define ARDUINOJSON_DEFAULT_NESTING_LIMIT 10
#endif
// Default capacity for DynamicJsonDocument
#ifndef ARDUINOJSON_DEFAULT_POOL_SIZE
#define ARDUINOJSON_DEFAULT_POOL_SIZE 1024
#endif
#else // ARDUINOJSON_EMBEDDED_MODE
// On a computer we have plenty of memory so we can use doubles
@ -89,11 +84,6 @@
#define ARDUINOJSON_DEFAULT_NESTING_LIMIT 50
#endif
// Default capacity for DynamicJsonDocument
#ifndef ARDUINOJSON_DEFAULT_POOL_SIZE
#define ARDUINOJSON_DEFAULT_POOL_SIZE 16384
#endif
#endif // ARDUINOJSON_EMBEDDED_MODE
#ifdef ARDUINO

View File

@ -12,7 +12,7 @@ namespace ARDUINOJSON_NAMESPACE {
class DynamicJsonDocument : public JsonDocument {
public:
DynamicJsonDocument(size_t capa = ARDUINOJSON_DEFAULT_POOL_SIZE)
explicit DynamicJsonDocument(size_t capa)
: JsonDocument(allocPool(addPadding(capa))) {}
DynamicJsonDocument(const DynamicJsonDocument& src)

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("Gbathree") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
DeserializationError error = deserializeJson(
doc,

View File

@ -8,7 +8,8 @@
// https://github.com/bblanchon/ArduinoJson/issues/772
TEST_CASE("Issue772") {
DynamicJsonDocument doc1, doc2;
DynamicJsonDocument doc1(4096);
DynamicJsonDocument doc2(4096);
DeserializationError err;
std::string data =
"{\"state\":{\"reported\":{\"timestamp\":\"2018-07-02T09:40:12Z\","

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
void check(std::string originalJson) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(16384);
std::string prettyJson;
deserializeJson(doc, originalJson);

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonArray::add()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
SECTION("int") {
@ -51,7 +51,7 @@ TEST_CASE("JsonArray::add()") {
#endif
SECTION("nested array") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonArray arr = doc2.to<JsonArray>();
array.add(arr);
@ -62,7 +62,7 @@ TEST_CASE("JsonArray::add()") {
}
SECTION("nested object") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonObject obj = doc2.to<JsonObject>();
array.add(obj);
@ -74,7 +74,7 @@ TEST_CASE("JsonArray::add()") {
SECTION("array subscript") {
const char* str = "hello";
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonArray arr = doc2.to<JsonArray>();
arr.add(str);
@ -85,7 +85,7 @@ TEST_CASE("JsonArray::add()") {
SECTION("object subscript") {
const char* str = "hello";
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonObject obj = doc2.to<JsonObject>();
obj["x"] = str;

View File

@ -7,7 +7,7 @@
TEST_CASE("JsonArray::copyFrom()") {
SECTION("OneDimension") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
char json[32];
int source[] = {1, 2, 3};
@ -34,7 +34,7 @@ TEST_CASE("JsonArray::copyFrom()") {
}
SECTION("TwoDimensions") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
char json[32];
int source[][3] = {{1, 2, 3}, {4, 5, 6}};

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonArray::copyTo()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("BiggerOneDimensionIntegerArray") {
char json[] = "[1,2,3]";

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonArray basics") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
SECTION("CreateNestedArray") {

View File

@ -6,11 +6,11 @@
#include <catch.hpp>
TEST_CASE("JsonArray::operator==()") {
DynamicJsonDocument doc1;
DynamicJsonDocument doc1(4096);
JsonArray array1 = doc1.to<JsonArray>();
JsonArrayConst array1c = array1;
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonArray array2 = doc2.to<JsonArray>();
JsonArrayConst array2c = array2;

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonArray::get()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "[1,2,3]");
JsonArray array = doc.as<JsonArray>();

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonArray::isNull()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("returns true") {
JsonArray arr;
@ -20,7 +20,7 @@ TEST_CASE("JsonArray::isNull()") {
}
TEST_CASE("JsonArrayConst::isNull()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("returns true") {
JsonArrayConst arr;

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonArray::remove()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray _array = doc.to<JsonArray>();
_array.add(1);
_array.add(2);

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonArray::size()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
SECTION("InitialSizeIsZero") {

View File

@ -11,7 +11,7 @@ static void eraseString(std::string &str) {
}
TEST_CASE("std::string") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
SECTION("add()") {

View File

@ -7,7 +7,7 @@
#include <catch.hpp>
TEST_CASE("JsonArray::operator[]") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
array.add(0);
@ -52,7 +52,7 @@ TEST_CASE("JsonArray::operator[]") {
}
SECTION("nested array") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonArray arr2 = doc2.to<JsonArray>();
array[0] = arr2;
@ -63,7 +63,7 @@ TEST_CASE("JsonArray::operator[]") {
}
SECTION("nested object") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonObject obj = doc2.to<JsonObject>();
array[0] = obj;
@ -74,7 +74,7 @@ TEST_CASE("JsonArray::operator[]") {
}
SECTION("array subscript") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonArray arr2 = doc2.to<JsonArray>();
const char* str = "hello";
@ -87,7 +87,7 @@ TEST_CASE("JsonArray::operator[]") {
SECTION("object subscript") {
const char* str = "hello";
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonObject obj = doc2.to<JsonObject>();
obj["x"] = str;
@ -146,7 +146,7 @@ TEST_CASE("JsonArray::operator[]") {
}
TEST_CASE("JsonArrayConst::operator[]") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
array.add(0);

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("deserialize JSON array") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("An empty array") {
DeserializationError err = deserializeJson(doc, "[]");

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("deserialize JSON object") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("An empty object") {
DeserializationError err = deserializeJson(doc, "{}");

View File

@ -13,7 +13,7 @@ using ARDUINOJSON_NAMESPACE::isnan;
} // namespace my
TEST_CASE("deserializeJson(DynamicJsonDocument&)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("null char*") {
DeserializationError err = deserializeJson(doc, static_cast<char*>(0));

View File

@ -7,7 +7,7 @@
#include <sstream>
TEST_CASE("deserializeJson(const std::string&)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("should accept const string") {
const std::string input("[42]");
@ -36,7 +36,7 @@ TEST_CASE("deserializeJson(const std::string&)") {
}
TEST_CASE("deserializeJson(std::istream&)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("array") {
std::istringstream json(" [ 42 /* comment */ ] ");

View File

@ -10,7 +10,7 @@
REQUIRE(DeserializationError::TooDeep == expression);
TEST_CASE("JsonDeserializer nestingLimit") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("limit = 0") {
doc.nestingLimit = 0;

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("DynamicJsonDocument") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("serializeJson()") {
JsonObject obj = doc.to<JsonObject>();
@ -136,7 +136,7 @@ TEST_CASE("DynamicJsonDocument copies") {
}
SECTION("Assign from StaticJsonDocument") {
DynamicJsonDocument ddoc;
DynamicJsonDocument ddoc(4096);
ddoc.to<JsonVariant>().set(666);
StaticJsonDocument<200> sdoc;

View File

@ -73,7 +73,7 @@ TEST_CASE("StaticJsonDocument") {
SECTION("Assign from DynamicJsonDocument") {
StaticJsonDocument<200> doc1;
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
doc1.to<JsonVariant>().set(666);
deserializeJson(doc2, "{\"hello\":\"world\"}");
doc2.nestingLimit = 42;
@ -100,7 +100,7 @@ TEST_CASE("StaticJsonDocument") {
}
SECTION("Construct from DynamicJsonDocument") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
deserializeJson(doc2, "{\"hello\":\"world\"}");
doc2.nestingLimit = 42;

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonObject::containsKey()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
obj["hello"] = 42;

View File

@ -6,8 +6,8 @@
#include <catch.hpp>
TEST_CASE("JsonObject::copyFrom()") {
DynamicJsonDocument doc1;
DynamicJsonDocument doc2;
DynamicJsonDocument doc1(4096);
DynamicJsonDocument doc2(4096);
JsonObject obj1 = doc1.to<JsonObject>();
JsonObject obj2 = doc2.to<JsonObject>();

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonObject::createNestedArray()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
SECTION("key is a const char*") {

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonObject::createNestedObject()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
SECTION("key is a const char*") {

View File

@ -6,11 +6,11 @@
#include <catch.hpp>
TEST_CASE("JsonObject::operator==()") {
DynamicJsonDocument doc1;
DynamicJsonDocument doc1(4096);
JsonObject obj1 = doc1.to<JsonObject>();
JsonObjectConst obj1c = obj1;
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonObject obj2 = doc2.to<JsonObject>();
JsonObjectConst obj2c = obj2;

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonObject::isNull()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("returns true") {
JsonObject obj;
@ -20,7 +20,7 @@ TEST_CASE("JsonObject::isNull()") {
}
TEST_CASE("JsonObjectConst::isNull()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("returns true") {
JsonObjectConst obj;

View File

@ -7,7 +7,7 @@
#include <string>
TEST_CASE("JsonObject::remove()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
obj["a"] = 0;
obj["b"] = 1;

View File

@ -7,7 +7,7 @@
#include <string>
TEST_CASE("JsonObject::size()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
SECTION("initial size is zero") {

View File

@ -11,7 +11,7 @@ static void eraseString(std::string &str) {
}
TEST_CASE("std::string") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("operator[]") {
char json[] = "{\"key\":\"value\"}";

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonObject::operator[]") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
SECTION("int") {
@ -52,7 +52,7 @@ TEST_CASE("JsonObject::operator[]") {
}
SECTION("array") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonArray arr = doc2.to<JsonArray>();
obj["hello"] = arr;
@ -63,7 +63,7 @@ TEST_CASE("JsonObject::operator[]") {
}
SECTION("object") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonObject obj2 = doc2.to<JsonObject>();
obj["hello"] = obj2;
@ -74,7 +74,7 @@ TEST_CASE("JsonObject::operator[]") {
}
SECTION("array subscript") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonArray arr = doc2.to<JsonArray>();
arr.add(42);
@ -84,7 +84,7 @@ TEST_CASE("JsonObject::operator[]") {
}
SECTION("object subscript") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonObject obj2 = doc2.to<JsonObject>();
obj2["x"] = 42;

View File

@ -15,7 +15,7 @@ static void check(JsonArray array, std::string expected) {
}
TEST_CASE("serializeJsonPretty(JsonArray)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
SECTION("Empty") {

View File

@ -17,7 +17,7 @@ void check(const JsonObject obj, const std::string &expected) {
}
TEST_CASE("serializeJson(JsonObject)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
SECTION("EmptyObject") {
@ -93,8 +93,8 @@ TEST_CASE("serializeJson(JsonObject)") {
}
SECTION("ThreeNestedArrays") {
DynamicJsonDocument b;
DynamicJsonDocument c;
DynamicJsonDocument b(4096);
DynamicJsonDocument c(4096);
obj.createNestedArray("a");
obj["b"] = b.to<JsonArray>();
@ -104,8 +104,8 @@ TEST_CASE("serializeJson(JsonObject)") {
}
SECTION("ThreeNestedObjects") {
DynamicJsonDocument b;
DynamicJsonDocument c;
DynamicJsonDocument b(4096);
DynamicJsonDocument c(4096);
obj.createNestedObject("a");
obj["b"] = b.to<JsonObject>();

View File

@ -18,7 +18,7 @@ void check(const JsonObject obj, const std::string expected) {
}
TEST_CASE("serializeJsonPretty(JsonObject)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
SECTION("EmptyObject") {

View File

@ -8,7 +8,7 @@
template <typename T>
void check(T value, const std::string &expected) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
doc.to<JsonVariant>().set(value);
char buffer[256] = "";
size_t returnValue = serializeJson(doc, buffer, sizeof(buffer));

View File

@ -4,7 +4,7 @@
template <typename T>
void check(T value, const std::string &expected) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
doc.to<JsonVariant>().set(value);
char buffer[256] = "";
size_t returnValue = serializeJson(doc, buffer, sizeof(buffer));
@ -13,7 +13,7 @@ void check(T value, const std::string &expected) {
}
TEST_CASE("serializeJson(JsonObjectSubscript)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "{\"hello\":42}");
JsonObject obj = doc.as<JsonObject>();
std::string result;
@ -24,7 +24,7 @@ TEST_CASE("serializeJson(JsonObjectSubscript)") {
}
TEST_CASE("serializeJson(JsonArraySubscript)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "[42]");
JsonArray arr = doc.as<JsonArray>();
std::string result;
@ -35,7 +35,7 @@ TEST_CASE("serializeJson(JsonArraySubscript)") {
}
TEST_CASE("serializeJson(JsonVariantSubscript)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "[42]");
JsonVariant var = doc.as<JsonVariant>();
std::string result;

View File

@ -7,7 +7,7 @@
#include <sstream>
TEST_CASE("operator<<(std::ostream)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
std::ostringstream os;
SECTION("JsonVariant containing false") {

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("serialize JsonArray to std::string") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
array.add(4);
array.add(2);
@ -27,7 +27,7 @@ TEST_CASE("serialize JsonArray to std::string") {
}
TEST_CASE("serialize JsonObject to std::string") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
obj["key"] = "value";

View File

@ -9,7 +9,7 @@
static const char* null = 0;
TEST_CASE("JsonVariant::as()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
SECTION("not set") {

View File

@ -9,7 +9,7 @@ static const char* null = 0;
template <typename T>
void checkEquals(T a, T b) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
variant.set(a);
@ -30,7 +30,7 @@ void checkEquals(T a, T b) {
template <typename T>
void checkGreater(T a, T b) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
variant.set(a);
@ -47,7 +47,7 @@ void checkGreater(T a, T b) {
template <typename T>
void checkLower(T a, T b) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
variant.set(a);
@ -111,7 +111,7 @@ TEST_CASE("JsonVariant comparisons") {
}
SECTION("null") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
variant.set(null);
@ -126,7 +126,7 @@ TEST_CASE("JsonVariant comparisons") {
}
SECTION("StringLiteral") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "\"hello\"");
JsonVariant variant = doc.as<JsonVariant>();
@ -153,7 +153,7 @@ TEST_CASE("JsonVariant comparisons") {
}
SECTION("String") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
variant.set("hello");
@ -185,7 +185,7 @@ TEST_CASE("JsonVariant comparisons") {
char vla[i];
strcpy(vla, "hello");
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
variant.set("hello");
@ -200,7 +200,7 @@ TEST_CASE("JsonVariant comparisons") {
char vla[i];
strcpy(vla, "hello");
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
variant.set("world");
@ -211,7 +211,7 @@ TEST_CASE("JsonVariant comparisons") {
}
#endif
DynamicJsonDocument doc1, doc2, doc3;
DynamicJsonDocument doc1(4096), doc2(4096), doc3(4096);
JsonVariant variant1 = doc1.to<JsonVariant>();
JsonVariant variant2 = doc2.to<JsonVariant>();
JsonVariant variant3 = doc3.to<JsonVariant>();
@ -329,10 +329,10 @@ TEST_CASE("JsonVariant comparisons") {
}
// SECTION("VariantsOfDifferentTypes") {
// DynamicJsonDocument doc1;
// DynamicJsonDocument doc1(4096);
// JsonObject obj = doc1.to<JsonObject>();
// DynamicJsonDocument doc2;
// DynamicJsonDocument doc2(4096);
// JsonArray arr = doc2.to<JsonArray>();
// JsonVariant variants[] = {
// true, 42, 666.667, "hello", arr, obj,

View File

@ -6,8 +6,8 @@
#include <catch.hpp>
TEST_CASE("JsonVariant::set(JsonVariant)") {
DynamicJsonDocument doc1;
DynamicJsonDocument doc2;
DynamicJsonDocument doc1(4096);
DynamicJsonDocument doc2(4096);
JsonVariant var1 = doc1.to<JsonVariant>();
JsonVariant var2 = doc2.to<JsonVariant>();

View File

@ -9,7 +9,7 @@
template <typename T>
void checkValue(T expected) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
variant.set(expected);
@ -24,7 +24,7 @@ void checkReference(T &expected) {
template <typename T>
void checkNumericType() {
DynamicJsonDocument docMin, docMax;
DynamicJsonDocument docMin(4096), docMax(4096);
JsonVariant variantMin = docMin.to<JsonVariant>();
JsonVariant variantMax = docMax.to<JsonVariant>();
@ -132,7 +132,7 @@ TEST_CASE("JsonVariant set()/get()") {
#endif
SECTION("CanStoreObject") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject object = doc.to<JsonObject>();
checkValue<JsonObject>(object);

View File

@ -19,7 +19,7 @@ void checkIsArray(TVariant var) {
}
void testArray(JsonArray value) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant var = doc.to<JsonVariant>();
var.set(value);
@ -44,7 +44,7 @@ void checkIsBool(TVariant var) {
}
void testBool(bool value) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant var = doc.to<JsonVariant>();
var.set(value);
@ -66,7 +66,7 @@ void checkIsFloat(TVariant var) {
}
void testFloat(double value) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant var = doc.to<JsonVariant>();
var.set(value);
@ -89,7 +89,7 @@ void checkIsInteger(TVariant var) {
template <typename T>
void testInteger(T value) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant var = doc.to<JsonVariant>();
var.set(value);
@ -112,7 +112,7 @@ void checkIsString(TVariant var) {
}
void testString(const char *value) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant var = doc.to<JsonVariant>();
var.set(value);
@ -122,7 +122,7 @@ void testString(const char *value) {
TEST_CASE("JsonVariant::is()") {
SECTION("JsonArray") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray array = doc.to<JsonArray>();
testArray(array);
}

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonVariant::isNull()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
SECTION("return true when Undefined") {
@ -20,7 +20,7 @@ TEST_CASE("JsonVariant::isNull()") {
}
SECTION("return false when EmptyArray") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonArray array = doc2.to<JsonArray>();
variant.set(array);
@ -28,7 +28,7 @@ TEST_CASE("JsonVariant::isNull()") {
}
SECTION("return false when EmptyObject") {
DynamicJsonDocument doc2;
DynamicJsonDocument doc2(4096);
JsonObject obj = doc2.to<JsonObject>();
variant.set(obj);

View File

@ -13,7 +13,7 @@ TEST_CASE("JsonVariant from JsonArray") {
}
SECTION("JsonArray is not null") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray arr = doc.to<JsonArray>();
arr.add(12);
arr.add(34);
@ -35,7 +35,7 @@ TEST_CASE("JsonVariant from JsonObject") {
}
SECTION("JsonObject is not null") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
obj["a"] = 12;
obj["b"] = 34;

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonVariant::operator|()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
SECTION("undefined") {

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonVariant and strings") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
SECTION("stores const char* by reference") {

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonVariant::operator[]") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant var = doc.to<JsonVariant>();
SECTION("The JsonVariant is undefined") {
@ -122,7 +122,7 @@ TEST_CASE("JsonVariant::operator[]") {
}
TEST_CASE("JsonVariantConst::operator[]") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant var = doc.to<JsonVariant>();
JsonVariantConst cvar = var;

View File

@ -29,7 +29,7 @@ TEST_CASE("unsigned char[]") {
}
SECTION("JsonVariant") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("set") {
unsigned char value[] = "42";
@ -92,7 +92,7 @@ TEST_CASE("unsigned char[]") {
SECTION("operator[]") {
unsigned char key[] = "hello";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
obj[key] = "world";
@ -102,7 +102,7 @@ TEST_CASE("unsigned char[]") {
SECTION("JsonObject::operator[] const") {
unsigned char key[] = "hello";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "{\"hello\":\"world\"}");
JsonObject obj = doc.as<JsonObject>();
@ -113,7 +113,7 @@ TEST_CASE("unsigned char[]") {
SECTION("containsKey()") {
unsigned char key[] = "hello";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "{\"hello\":\"world\"}");
JsonObject obj = doc.as<JsonObject>();
REQUIRE(true == obj.containsKey(key));
@ -122,7 +122,7 @@ TEST_CASE("unsigned char[]") {
SECTION("remove()") {
unsigned char key[] = "hello";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "{\"hello\":\"world\"}");
JsonObject obj = doc.as<JsonObject>();
obj.remove(key);
@ -133,7 +133,7 @@ TEST_CASE("unsigned char[]") {
SECTION("createNestedArray()") {
unsigned char key[] = "hello";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
obj.createNestedArray(key);
}
@ -141,7 +141,7 @@ TEST_CASE("unsigned char[]") {
SECTION("createNestedObject()") {
unsigned char key[] = "hello";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
obj.createNestedObject(key);
}
@ -151,7 +151,7 @@ TEST_CASE("unsigned char[]") {
SECTION("operator=") { // issue #416
unsigned char value[] = "world";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
obj["hello"] = value;
@ -161,7 +161,7 @@ TEST_CASE("unsigned char[]") {
SECTION("set()") {
unsigned char value[] = "world";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject obj = doc.to<JsonObject>();
obj["hello"].set(value);
@ -173,7 +173,7 @@ TEST_CASE("unsigned char[]") {
SECTION("add()") {
unsigned char value[] = "world";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray arr = doc.to<JsonArray>();
arr.add(value);
@ -185,7 +185,7 @@ TEST_CASE("unsigned char[]") {
SECTION("set()") {
unsigned char value[] = "world";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray arr = doc.to<JsonArray>();
arr.add("hello");
arr[0].set(value);
@ -196,7 +196,7 @@ TEST_CASE("unsigned char[]") {
SECTION("operator=") {
unsigned char value[] = "world";
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonArray arr = doc.to<JsonArray>();
arr.add("hello");
arr[0] = value;

View File

@ -4,7 +4,7 @@
#include <catch.hpp>
TEST_CASE("ARDUINOJSON_USE_DOUBLE == 0") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject root = doc.to<JsonObject>();
root["pi"] = 3.14;

View File

@ -4,7 +4,7 @@
#include <catch.hpp>
TEST_CASE("ARDUINOJSON_USE_DOUBLE == 1") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject root = doc.to<JsonObject>();
root["pi"] = 3.14;

View File

@ -17,7 +17,7 @@ std::string get_expected_json<8>() {
}
TEST_CASE("ARDUINOJSON_USE_LONG_LONG == 0") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject root = doc.to<JsonObject>();
root["A"] = 123456789123456789;

View File

@ -4,7 +4,7 @@
#include <catch.hpp>
TEST_CASE("ARDUINOJSON_USE_LONG_LONG == 1") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject root = doc.to<JsonObject>();
root["A"] = 123456789123456789;

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("deserialize MsgPack array") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("fixarray") {
SECTION("empty") {

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("deserialize MsgPack object") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("fixmap") {
SECTION("empty") {

View File

@ -7,22 +7,22 @@
template <typename T, typename U>
static void check(const char* input, U expected) {
DynamicJsonDocument variant;
DynamicJsonDocument doc(4096);
DeserializationError error = deserializeMsgPack(variant, input);
DeserializationError error = deserializeMsgPack(doc, input);
REQUIRE(error == DeserializationError::Ok);
REQUIRE(variant.is<T>());
REQUIRE(variant.as<T>() == expected);
REQUIRE(doc.is<T>());
REQUIRE(doc.as<T>() == expected);
}
static void checkIsNull(const char* input) {
DynamicJsonDocument variant;
DynamicJsonDocument doc(4096);
DeserializationError error = deserializeMsgPack(variant, input);
DeserializationError error = deserializeMsgPack(doc, input);
REQUIRE(error == DeserializationError::Ok);
REQUIRE(variant.as<JsonVariant>().isNull());
REQUIRE(doc.as<JsonVariant>().isNull());
}
TEST_CASE("deserialize MsgPack value") {

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
DeserializationError deserialize(const char* input, size_t len) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
return deserializeMsgPack(doc, input, len);
}

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("deserializeMsgPack(const std::string&)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("should accept const string") {
const std::string input("\x92\x01\x02");
@ -46,7 +46,7 @@ TEST_CASE("deserializeMsgPack(const std::string&)") {
}
TEST_CASE("deserializeMsgPack(std::istream&)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
SECTION("should accept a zero in input") {
std::istringstream input(std::string("\x92\x00\x02", 3));

View File

@ -7,7 +7,7 @@
static void check(const char* input, DeserializationError expected,
uint8_t limit) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
doc.nestingLimit = limit;
DeserializationError error = deserializeMsgPack(doc, input);

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
static void checkNotSupported(const char* input) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
DeserializationError error = deserializeMsgPack(doc, input);

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("serialize MsgPack to various destination types") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject object = doc.to<JsonObject>();
object["hello"] = "world";
const char *expected_result = "\x81\xA5hello\xA5world";

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("measureMsgPack()") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject object = doc.to<JsonObject>();
object["hello"] = "world";

View File

@ -4,7 +4,7 @@
template <typename T>
void check(T value, const std::string &expected) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
doc.to<JsonVariant>().set(value);
char buffer[256] = "";
size_t returnValue = serializeMsgPack(doc, buffer, sizeof(buffer));
@ -13,7 +13,7 @@ void check(T value, const std::string &expected) {
}
TEST_CASE("serializeMsgPack(JsonObjectSubscript)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "{\"hello\":42}");
JsonObject obj = doc.as<JsonObject>();
std::string result;
@ -24,7 +24,7 @@ TEST_CASE("serializeMsgPack(JsonObjectSubscript)") {
}
TEST_CASE("serializeMsgPack(JsonArraySubscript)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "[42]");
JsonArray arr = doc.as<JsonArray>();
std::string result;
@ -35,7 +35,7 @@ TEST_CASE("serializeMsgPack(JsonArraySubscript)") {
}
TEST_CASE("serializeMsgPack(JsonVariantSubscript)") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
deserializeJson(doc, "[42]");
JsonVariant var = doc.as<JsonVariant>();
std::string result;

View File

@ -28,7 +28,7 @@ static void check(const JsonObject object, const char (&expected_data)[N]) {
//}
TEST_CASE("serialize MsgPack object") {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonObject object = doc.to<JsonObject>();
SECTION("empty") {

View File

@ -7,7 +7,7 @@
template <typename T>
void check(T value, const char* expected_data, size_t expected_len) {
DynamicJsonDocument doc;
DynamicJsonDocument doc(4096);
JsonVariant variant = doc.to<JsonVariant>();
variant.set(value);
std::string expected(expected_data, expected_data + expected_len);