From aebf042baeb08435ca22bd583e5ee3df82e03d46 Mon Sep 17 00:00:00 2001 From: Benoit Blanchon Date: Thu, 24 Aug 2023 09:43:23 +0200 Subject: [PATCH] Test custom converter for `char` (#1963) --- extras/tests/JsonVariant/converters.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/extras/tests/JsonVariant/converters.cpp b/extras/tests/JsonVariant/converters.cpp index cd4e7c21..89afc9b7 100644 --- a/extras/tests/JsonVariant/converters.cpp +++ b/extras/tests/JsonVariant/converters.cpp @@ -158,6 +158,11 @@ void convertToJson(char c, JsonVariant var) { char buf[] = {c, 0}; var.set(buf); } + +void convertFromJson(JsonVariantConst src, char& dst) { + auto p = src.as(); + dst = p ? p[0] : 0; +} } // namespace ArduinoJson TEST_CASE("Convert char to string") { // issue #1922 @@ -165,3 +170,9 @@ TEST_CASE("Convert char to string") { // issue #1922 doc.set('a'); REQUIRE(doc.as() == "a"); } + +TEST_CASE("Convert string to char") { // issue #1963 + StaticJsonDocument<64> doc; + doc.set("a"); + REQUIRE(doc.as() == 'a'); +}