Remove capacity from JsonDocument's constructor

This commit is contained in:
Benoit Blanchon
2023-07-17 18:15:13 +02:00
parent 42b2840009
commit 0f319e7ca4
162 changed files with 438 additions and 500 deletions

View File

@ -9,7 +9,7 @@ using ArduinoJson::detail::sizeofArray;
using ArduinoJson::detail::sizeofString;
TEST_CASE("JsonArray::add()") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray array = doc.to<JsonArray>();
SECTION("int") {
@ -54,7 +54,7 @@ TEST_CASE("JsonArray::add()") {
#endif
SECTION("nested array") {
JsonDocument doc2(4096);
JsonDocument doc2;
JsonArray arr = doc2.to<JsonArray>();
array.add(arr);
@ -65,7 +65,7 @@ TEST_CASE("JsonArray::add()") {
}
SECTION("nested object") {
JsonDocument doc2(4096);
JsonDocument doc2;
JsonObject obj = doc2.to<JsonObject>();
array.add(obj);
@ -77,7 +77,7 @@ TEST_CASE("JsonArray::add()") {
SECTION("array subscript") {
const char* str = "hello";
JsonDocument doc2(4096);
JsonDocument doc2;
JsonArray arr = doc2.to<JsonArray>();
arr.add(str);
@ -88,7 +88,7 @@ TEST_CASE("JsonArray::add()") {
SECTION("object subscript") {
const char* str = "hello";
JsonDocument doc2(4096);
JsonDocument doc2;
JsonObject obj = doc2.to<JsonObject>();
obj["x"] = str;

View File

@ -14,7 +14,7 @@ TEST_CASE("JsonArray::clear()") {
}
SECTION("Removes all elements") {
JsonDocument doc(64);
JsonDocument doc;
JsonArray array = doc.to<JsonArray>();
array.add(1);
array.add(2);

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("Compare JsonArray with JsonArray") {
JsonDocument doc(256);
JsonDocument doc;
SECTION("Compare with unbound") {
JsonArray array = doc.to<JsonArray>();
@ -82,7 +82,7 @@ TEST_CASE("Compare JsonArray with JsonArray") {
}
TEST_CASE("Compare JsonArray with JsonVariant") {
JsonDocument doc(256);
JsonDocument doc;
SECTION("Compare with self") {
JsonArray array = doc.to<JsonArray>();
@ -153,7 +153,7 @@ TEST_CASE("Compare JsonArray with JsonVariant") {
}
TEST_CASE("Compare JsonArray with JsonVariantConst") {
JsonDocument doc(256);
JsonDocument doc;
SECTION("Compare with unbound") {
JsonArray array = doc.to<JsonArray>();
@ -247,7 +247,7 @@ TEST_CASE("Compare JsonArray with JsonVariantConst") {
}
TEST_CASE("Compare JsonArray with JsonArrayConst") {
JsonDocument doc(256);
JsonDocument doc;
SECTION("Compare with unbound") {
JsonArray array = doc.to<JsonArray>();
@ -347,7 +347,7 @@ TEST_CASE("Compare JsonArray with JsonArrayConst") {
}
TEST_CASE("Compare JsonArrayConst with JsonArrayConst") {
JsonDocument doc(256);
JsonDocument doc;
SECTION("Compare with unbound") {
JsonArray array = doc.to<JsonArray>();
@ -430,7 +430,7 @@ TEST_CASE("Compare JsonArrayConst with JsonArrayConst") {
}
TEST_CASE("Compare JsonArrayConst with JsonVariant") {
JsonDocument doc(256);
JsonDocument doc;
SECTION("Compare with self") {
JsonArray array = doc.to<JsonArray>();

View File

@ -7,11 +7,9 @@
#include "Allocators.hpp"
using ArduinoJson::detail::sizeofArray;
TEST_CASE("copyArray()") {
SECTION("int[] -> JsonArray") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray array = doc.to<JsonArray>();
char json[32];
int source[] = {1, 2, 3};
@ -24,7 +22,7 @@ TEST_CASE("copyArray()") {
}
SECTION("std::string[] -> JsonArray") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray array = doc.to<JsonArray>();
char json[32];
std::string source[] = {"a", "b", "c"};
@ -37,7 +35,7 @@ TEST_CASE("copyArray()") {
}
SECTION("const char*[] -> JsonArray") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray array = doc.to<JsonArray>();
char json[32];
const char* source[] = {"a", "b", "c"};
@ -50,7 +48,7 @@ TEST_CASE("copyArray()") {
}
SECTION("const char[][] -> JsonArray") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray array = doc.to<JsonArray>();
char json[32];
char source[][2] = {"a", "b", "c"};
@ -63,7 +61,7 @@ TEST_CASE("copyArray()") {
}
SECTION("const char[][] -> JsonDocument") {
JsonDocument doc(4096);
JsonDocument doc;
char json[32];
char source[][2] = {"a", "b", "c"};
@ -75,7 +73,7 @@ TEST_CASE("copyArray()") {
}
SECTION("const char[][] -> MemberProxy") {
JsonDocument doc(4096);
JsonDocument doc;
char json[32];
char source[][2] = {"a", "b", "c"};
@ -87,7 +85,7 @@ TEST_CASE("copyArray()") {
}
SECTION("int[] -> JsonDocument") {
JsonDocument doc(4096);
JsonDocument doc;
char json[32];
int source[] = {1, 2, 3};
@ -99,7 +97,7 @@ TEST_CASE("copyArray()") {
}
SECTION("int[] -> MemberProxy") {
JsonDocument doc(4096);
JsonDocument doc;
char json[32];
int source[] = {1, 2, 3};
@ -111,7 +109,7 @@ TEST_CASE("copyArray()") {
}
SECTION("int[] -> JsonArray, but not enough memory") {
JsonDocument doc(0, FailingAllocator::instance());
JsonDocument doc(FailingAllocator::instance());
JsonArray array = doc.to<JsonArray>();
int source[] = {1, 2, 3};
@ -120,7 +118,7 @@ TEST_CASE("copyArray()") {
}
SECTION("int[][] -> JsonArray") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray array = doc.to<JsonArray>();
char json[32];
int source[][3] = {{1, 2, 3}, {4, 5, 6}};
@ -133,7 +131,7 @@ TEST_CASE("copyArray()") {
}
SECTION("int[][] -> MemberProxy") {
JsonDocument doc(4096);
JsonDocument doc;
char json[32];
int source[][3] = {{1, 2, 3}, {4, 5, 6}};
@ -145,7 +143,7 @@ TEST_CASE("copyArray()") {
}
SECTION("int[][] -> JsonDocument") {
JsonDocument doc(4096);
JsonDocument doc;
char json[32];
int source[][3] = {{1, 2, 3}, {4, 5, 6}};
@ -157,7 +155,7 @@ TEST_CASE("copyArray()") {
}
SECTION("int[][] -> JsonArray, but not enough memory") {
JsonDocument doc(0, FailingAllocator::instance());
JsonDocument doc(FailingAllocator::instance());
JsonArray array = doc.to<JsonArray>();
int source[][3] = {{1, 2, 3}, {4, 5, 6}};
@ -166,7 +164,7 @@ TEST_CASE("copyArray()") {
}
SECTION("JsonArray -> int[], with more space than needed") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "[1,2,3]";
DeserializationError err = deserializeJson(doc, json);
CHECK(err == DeserializationError::Ok);
@ -183,7 +181,7 @@ TEST_CASE("copyArray()") {
}
SECTION("JsonArray -> int[], without enough space") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "[1,2,3]";
DeserializationError err = deserializeJson(doc, json);
CHECK(err == DeserializationError::Ok);
@ -198,7 +196,7 @@ TEST_CASE("copyArray()") {
}
SECTION("JsonArray -> std::string[]") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "[\"a\",\"b\",\"c\"]";
DeserializationError err = deserializeJson(doc, json);
CHECK(err == DeserializationError::Ok);
@ -215,7 +213,7 @@ TEST_CASE("copyArray()") {
}
SECTION("JsonArray -> char[N][]") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "[\"a12345\",\"b123456\",\"c1234567\"]";
DeserializationError err = deserializeJson(doc, json);
CHECK(err == DeserializationError::Ok);
@ -232,7 +230,7 @@ TEST_CASE("copyArray()") {
}
SECTION("JsonDocument -> int[]") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "[1,2,3]";
DeserializationError err = deserializeJson(doc, json);
CHECK(err == DeserializationError::Ok);
@ -248,7 +246,7 @@ TEST_CASE("copyArray()") {
}
SECTION("MemberProxy -> int[]") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "{\"data\":[1,2,3]}";
DeserializationError err = deserializeJson(doc, json);
CHECK(err == DeserializationError::Ok);
@ -264,7 +262,7 @@ TEST_CASE("copyArray()") {
}
SECTION("ElementProxy -> int[]") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "[[1,2,3]]";
DeserializationError err = deserializeJson(doc, json);
CHECK(err == DeserializationError::Ok);
@ -280,7 +278,7 @@ TEST_CASE("copyArray()") {
}
SECTION("JsonArray -> int[][]") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "[[1,2],[3],[4]]";
DeserializationError err = deserializeJson(doc, json);
@ -299,7 +297,7 @@ TEST_CASE("copyArray()") {
}
SECTION("JsonDocument -> int[][]") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "[[1,2],[3],[4]]";
DeserializationError err = deserializeJson(doc, json);
@ -317,7 +315,7 @@ TEST_CASE("copyArray()") {
}
SECTION("MemberProxy -> int[][]") {
JsonDocument doc(4096);
JsonDocument doc;
char json[] = "{\"data\":[[1,2],[3],[4]]}";
DeserializationError err = deserializeJson(doc, json);

View File

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

View File

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

View File

@ -12,7 +12,7 @@ TEST_CASE("JsonArray::isNull()") {
}
SECTION("returns false") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray arr = doc.to<JsonArray>();
REQUIRE(arr.isNull() == false);
}
@ -25,7 +25,7 @@ TEST_CASE("JsonArrayConst::isNull()") {
}
SECTION("returns false") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArrayConst arr = doc.to<JsonArray>();
REQUIRE(arr.isNull() == false);
}
@ -38,7 +38,7 @@ TEST_CASE("JsonArray::operator bool()") {
}
SECTION("returns true") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray arr = doc.to<JsonArray>();
REQUIRE(static_cast<bool>(arr) == true);
}
@ -51,7 +51,7 @@ TEST_CASE("JsonArrayConst::operator bool()") {
}
SECTION("returns true") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArrayConst arr = doc.to<JsonArray>();
REQUIRE(static_cast<bool>(arr) == true);
}

View File

@ -5,11 +5,9 @@
#include <ArduinoJson.h>
#include <catch.hpp>
using ArduinoJson::detail::sizeofArray;
template <typename TArray>
static void run_iterator_test() {
JsonDocument doc(sizeofArray(2));
JsonDocument doc;
JsonArray tmp = doc.to<JsonArray>();
tmp.add(12);
tmp.add(34);

View File

@ -10,7 +10,7 @@ using ArduinoJson::detail::sizeofObject;
using ArduinoJson::detail::sizeofString;
TEST_CASE("JsonArray::memoryUsage()") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray arr = doc.to<JsonArray>();
SECTION("return 0 if uninitialized") {

View File

@ -6,7 +6,7 @@
#include <catch.hpp>
TEST_CASE("JsonArray::nesting()") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray arr = doc.to<JsonArray>();
SECTION("return 0 if uninitialized") {

View File

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

View File

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

View File

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

View File

@ -10,7 +10,7 @@ using ArduinoJson::detail::sizeofArray;
using ArduinoJson::detail::sizeofString;
TEST_CASE("JsonArray::operator[]") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray array = doc.to<JsonArray>();
SECTION("Pad with null") {
@ -68,7 +68,7 @@ TEST_CASE("JsonArray::operator[]") {
}
SECTION("nested array") {
JsonDocument doc2(4096);
JsonDocument doc2;
JsonArray arr2 = doc2.to<JsonArray>();
array[0] = arr2;
@ -79,7 +79,7 @@ TEST_CASE("JsonArray::operator[]") {
}
SECTION("nested object") {
JsonDocument doc2(4096);
JsonDocument doc2;
JsonObject obj = doc2.to<JsonObject>();
array[0] = obj;
@ -90,7 +90,7 @@ TEST_CASE("JsonArray::operator[]") {
}
SECTION("array subscript") {
JsonDocument doc2(4096);
JsonDocument doc2;
JsonArray arr2 = doc2.to<JsonArray>();
const char* str = "hello";
@ -103,7 +103,7 @@ TEST_CASE("JsonArray::operator[]") {
SECTION("object subscript") {
const char* str = "hello";
JsonDocument doc2(4096);
JsonDocument doc2;
JsonObject obj = doc2.to<JsonObject>();
obj["x"] = str;
@ -162,7 +162,7 @@ TEST_CASE("JsonArray::operator[]") {
}
TEST_CASE("JsonArrayConst::operator[]") {
JsonDocument doc(4096);
JsonDocument doc;
JsonArray array = doc.to<JsonArray>();
array.add(0);