mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 08:42:39 +01:00 
			
		
		
		
	Update to v6.21.5
This commit is contained in:
		| @@ -1,8 +1,16 @@ | ||||
| // ArduinoJson - https://arduinojson.org | ||||
| // Copyright © 2014-2023, Benoit BLANCHON | ||||
| // MIT License | ||||
|  | ||||
| // we expect ArduinoJson.h to include <string_view> | ||||
| // but we don't want it to included accidentally | ||||
| #undef ARDUINO | ||||
| #define ARDUINOJSON_ENABLE_STD_STREAM 0 | ||||
| #define ARDUINOJSON_ENABLE_STD_STRING 0 | ||||
|  | ||||
| #include <ArduinoJson.h> | ||||
| #include <catch.hpp> | ||||
|  | ||||
| #include <string_view> | ||||
|  | ||||
| #if !ARDUINOJSON_ENABLE_STRING_VIEW | ||||
| #  error ARDUINOJSON_ENABLE_STRING_VIEW must be set to 1 | ||||
| #endif | ||||
| @@ -19,7 +27,7 @@ TEST_CASE("string_view") { | ||||
|  | ||||
|   SECTION("JsonDocument::set()") { | ||||
|     doc.set(std::string_view("123", 2)); | ||||
|     REQUIRE(doc.as<std::string>() == "12"); | ||||
|     REQUIRE(doc.as<std::string_view>() == "12"); | ||||
|   } | ||||
|  | ||||
|   SECTION("JsonDocument::operator[]() const") { | ||||
|   | ||||
| @@ -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<const char*>(); | ||||
|   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<std::string>() == "a"); | ||||
| } | ||||
|  | ||||
| TEST_CASE("Convert string to char") {  // issue #1963 | ||||
|   StaticJsonDocument<64> doc; | ||||
|   doc.set("a"); | ||||
|   REQUIRE(doc.as<char>() == 'a'); | ||||
| } | ||||
|   | ||||
| @@ -140,6 +140,13 @@ TEST_CASE("volatile") { | ||||
|   DynamicJsonDocument doc(4096); | ||||
|   JsonVariant variant = doc.to<JsonVariant>(); | ||||
|  | ||||
|   SECTION("volatile bool") {  // issue #2029 | ||||
|     volatile bool f = true; | ||||
|     variant.set(f); | ||||
|     CHECK(variant.is<bool>() == true); | ||||
|     CHECK(variant.as<bool>() == true); | ||||
|   } | ||||
|  | ||||
|   SECTION("volatile int") { | ||||
|     volatile int f = 42; | ||||
|     variant.set(f); | ||||
|   | ||||
| @@ -6,6 +6,7 @@ add_executable(MiscTests | ||||
| 	arithmeticCompare.cpp | ||||
| 	conflicts.cpp | ||||
| 	FloatParts.cpp | ||||
| 	issue1967.cpp | ||||
| 	JsonString.cpp | ||||
| 	NoArduinoHeader.cpp | ||||
| 	printable.cpp | ||||
|   | ||||
							
								
								
									
										13
									
								
								extras/tests/Misc/issue1967.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								extras/tests/Misc/issue1967.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | ||||
| // ArduinoJson - https://arduinojson.org | ||||
| // Copyright © 2014-2023, Benoit BLANCHON | ||||
| // MIT License | ||||
|  | ||||
| // we expect ArduinoJson.h to include <string> | ||||
| #define ARDUINOJSON_ENABLE_STD_STRING 1 | ||||
|  | ||||
| // but we don't want it to included accidentally | ||||
| #undef ARDUINO | ||||
| #define ARDUINOJSON_ENABLE_STD_STREAM 0 | ||||
| #define ARDUINOJSON_ENABLE_STRING_VIEW 0 | ||||
|  | ||||
| #include <ArduinoJson.h> | ||||
		Reference in New Issue
	
	Block a user