mirror of
				https://github.com/bblanchon/ArduinoJson.git
				synced 2025-11-04 00:21:36 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			71 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
/*
 | 
						|
* Arduino JSON library
 | 
						|
* Benoit Blanchon 2014 - MIT License
 | 
						|
*/
 | 
						|
 | 
						|
#include "CppUnitTest.h"
 | 
						|
#include "JsonParser.h"
 | 
						|
 | 
						|
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
 | 
						|
using namespace ArduinoJson::Parser;
 | 
						|
 | 
						|
namespace JsonParserTests
 | 
						|
{
 | 
						|
    TEST_CLASS(JsonObjectIteratorTests)
 | 
						|
    {
 | 
						|
    public:
 | 
						|
 | 
						|
        TEST_METHOD(EmptyObject)
 | 
						|
        {
 | 
						|
            char json [] = "{}";
 | 
						|
            JsonParser<1> parser;
 | 
						|
 | 
						|
            JsonHashTable a = parser.parse(json);
 | 
						|
 | 
						|
            int loopCount = 0;
 | 
						|
 | 
						|
            for (auto i : a)
 | 
						|
            {
 | 
						|
                loopCount++;
 | 
						|
            }
 | 
						|
 | 
						|
            Assert::AreEqual(0, loopCount);
 | 
						|
        }
 | 
						|
 | 
						|
        TEST_METHOD(EmptyJson)
 | 
						|
        {
 | 
						|
            char json[] = "";
 | 
						|
            JsonParser<1> parser;
 | 
						|
 | 
						|
            JsonHashTable a = parser.parse(json);
 | 
						|
 | 
						|
            int loopCount = 0;
 | 
						|
 | 
						|
            for (auto i : a)
 | 
						|
            {
 | 
						|
                loopCount++;
 | 
						|
            }
 | 
						|
 | 
						|
            Assert::AreEqual(0, loopCount);
 | 
						|
        }
 | 
						|
 | 
						|
        TEST_METHOD(ThreeStrings)
 | 
						|
        {
 | 
						|
            char json[] = "{\"key1\":\"value1\",\"key2\":\"value2\",\"key3\":\"value3\"}";
 | 
						|
            char* expectedKeys[] = {"key1", "key2", "key3"};
 | 
						|
            char* expectedValues[] = {"value1", "value2", "value3"};
 | 
						|
            JsonParser<7> parser;
 | 
						|
 | 
						|
            JsonHashTable a = parser.parse(json);
 | 
						|
 | 
						|
            int index = 0;
 | 
						|
 | 
						|
            for (auto i : a)
 | 
						|
            {
 | 
						|
                Assert::AreEqual(expectedKeys[index], i.key());
 | 
						|
                Assert::AreEqual(expectedValues[index], (const char*) i.value());
 | 
						|
                index++;
 | 
						|
            }
 | 
						|
        }
 | 
						|
    };
 | 
						|
} |