mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	Changed JsonArray tests to show the issue
This commit is contained in:
		| @@ -20,12 +20,17 @@ namespace ArduinoJson | ||||
|  | ||||
|             } | ||||
|  | ||||
|             void add(const Printable& nestedObject) | ||||
|             { | ||||
|                 if (count < capacity) | ||||
|                     items[count++] = nestedObject; | ||||
|             } | ||||
|  | ||||
|             template<typename T> | ||||
|             void add(T value) | ||||
|             { | ||||
|                 if (count >= capacity) return; | ||||
|  | ||||
|                 items[count++] = value; | ||||
|                 if (count < capacity) | ||||
|                     items[count++] = value; | ||||
|             } | ||||
|  | ||||
|             template<int DIGITS> | ||||
|   | ||||
| @@ -35,7 +35,7 @@ namespace ArduinoJson | ||||
|                 content.asLong = value; | ||||
|             } | ||||
|  | ||||
|             void operator=(Printable& value) | ||||
|             void operator=(const Printable& value) | ||||
|             { | ||||
|                 printToImpl = &printPrintableTo; | ||||
|                 content.asPrintable = &value; | ||||
| @@ -89,7 +89,7 @@ namespace ArduinoJson | ||||
|                 return content.asLong; | ||||
|             } | ||||
|  | ||||
|             operator Printable&() | ||||
|             operator const Printable&() | ||||
|             { | ||||
|                 return *content.asPrintable; | ||||
|             } | ||||
| @@ -109,11 +109,11 @@ namespace ArduinoJson | ||||
|         private: | ||||
|             union Content | ||||
|             { | ||||
|                 bool        asBool; | ||||
|                 double      asDouble; | ||||
|                 long        asLong; | ||||
|                 Printable*  asPrintable; | ||||
|                 const char* asString; | ||||
|                 bool                asBool; | ||||
|                 double              asDouble; | ||||
|                 long                asLong; | ||||
|                 const Printable*    asPrintable; | ||||
|                 const char*         asString; | ||||
|             }; | ||||
|  | ||||
|             Content content; | ||||
|   | ||||
| @@ -124,13 +124,19 @@ namespace JsonGeneratorTests | ||||
|  | ||||
|         TEST_METHOD(OneEmptyNestedArray) | ||||
|         { | ||||
|            addNested(JsonArray<1>()); | ||||
|             JsonArray<1> nestedArray; | ||||
|              | ||||
|             arr.add(nestedArray); | ||||
|  | ||||
|             outputMustBe("[[]]"); | ||||
|         } | ||||
|  | ||||
|         TEST_METHOD(OneEmptyNestedHash) | ||||
|         { | ||||
|             addNested(JsonHashTable<1>()); | ||||
|             JsonObject<1> nestedObject; | ||||
|  | ||||
|             arr.add(nestedObject); | ||||
|  | ||||
|             outputMustBe("[{}]"); | ||||
|         } | ||||
|  | ||||
| @@ -139,18 +145,13 @@ namespace JsonGeneratorTests | ||||
|             JsonArray<1> nestedArray; | ||||
|             nestedArray.add(1); | ||||
|  | ||||
|             addNested(nestedArray); | ||||
|             arr.add(nestedArray); | ||||
|  | ||||
|             outputMustBe("[[1]]"); | ||||
|         } | ||||
|  | ||||
|     private: | ||||
|  | ||||
|         void addNested(Printable& value) | ||||
|         { | ||||
|             arr.add<Printable&>(value); | ||||
|         } | ||||
|  | ||||
|         template<typename T> | ||||
|         void add(T value) | ||||
|         { | ||||
|   | ||||
| @@ -71,7 +71,7 @@ namespace JsonGeneratorTests | ||||
|         void setValueAndCheckCast(JsonArray<N>& expected) | ||||
|         { | ||||
|             value = expected; | ||||
|             Printable& actual = value; | ||||
|             const Printable& actual = value; | ||||
|             Assert::AreEqual((void*) &expected, (void*) &actual); | ||||
|         } | ||||
|     }; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user