forked from bblanchon/ArduinoJson
Added JsonObjectIterator
This commit is contained in:
@ -7,25 +7,28 @@ using namespace ArduinoJson::Parser;
|
||||
|
||||
namespace JsonParserTests
|
||||
{
|
||||
TEST_CLASS(JsonArrayIteratorTests)
|
||||
{
|
||||
public:
|
||||
|
||||
TEST_METHOD(ThreeIntegers)
|
||||
{
|
||||
char json [] = "[1,2,3]";
|
||||
long expected [] = { 1, 2, 3 };
|
||||
JsonParser<4> parser;
|
||||
TEST_CLASS(JsonObjectIteratorTests)
|
||||
{
|
||||
public:
|
||||
|
||||
JsonArray a = parser.parse(json);
|
||||
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 (long i : a)
|
||||
for (auto i : a)
|
||||
{
|
||||
Assert::AreEqual(expected[index++], i);
|
||||
Assert::AreEqual(expectedKeys[index], i.key());
|
||||
Assert::AreEqual(expectedValues[index], (const char*) i.value());
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
};
|
||||
}
|
31
JsonParserTests/JsonObjectIteratorTests.cpp
Normal file
31
JsonParserTests/JsonObjectIteratorTests.cpp
Normal file
@ -0,0 +1,31 @@
|
||||
#include "CppUnitTest.h"
|
||||
#include "JsonParser.h"
|
||||
|
||||
using namespace Microsoft::VisualStudio::CppUnitTestFramework;
|
||||
using namespace ArduinoJson::Parser;
|
||||
|
||||
|
||||
namespace JsonParserTests
|
||||
{
|
||||
TEST_CLASS(JsonArrayIteratorTests)
|
||||
{
|
||||
public:
|
||||
|
||||
TEST_METHOD(ThreeIntegers)
|
||||
{
|
||||
char json [] = "[1,2,3]";
|
||||
long expected [] = { 1, 2, 3 };
|
||||
JsonParser<4> parser;
|
||||
|
||||
JsonArray a = parser.parse(json);
|
||||
|
||||
int index = 0;
|
||||
|
||||
for (long i : a)
|
||||
{
|
||||
Assert::AreEqual(expected[index++], i);
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
}
|
@ -93,6 +93,7 @@
|
||||
<ClCompile Include="..\JsonParser\JsonValue.cpp" />
|
||||
<ClCompile Include="JsonArrayIteratorTests.cpp" />
|
||||
<ClCompile Include="JsonArrayTests.cpp" />
|
||||
<ClCompile Include="JsonObjectIteratorTests.cpp" />
|
||||
<ClCompile Include="JsonObjectTests.cpp" />
|
||||
<ClCompile Include="GbathreeBug.cpp" />
|
||||
</ItemGroup>
|
||||
@ -101,6 +102,8 @@
|
||||
<ClInclude Include="..\JsonParser\JsonArray.h" />
|
||||
<ClInclude Include="..\JsonParser\JsonArrayIterator.h" />
|
||||
<ClInclude Include="..\JsonParser\JsonObject.h" />
|
||||
<ClInclude Include="..\JsonParser\JsonObjectIterator.h" />
|
||||
<ClInclude Include="..\JsonParser\JsonPair.h" />
|
||||
<ClInclude Include="..\JsonParser\JsonParser.h" />
|
||||
<ClInclude Include="..\JsonParser\JsonParserBase.h" />
|
||||
<ClInclude Include="..\JsonParser\JsonToken.h" />
|
||||
|
@ -45,6 +45,9 @@
|
||||
<ClCompile Include="JsonObjectTests.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="JsonObjectIteratorTests.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\JsonParser\jsmn.h">
|
||||
@ -71,5 +74,11 @@
|
||||
<ClInclude Include="..\JsonParser\JsonObject.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\JsonParser\JsonPair.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\JsonParser\JsonObjectIterator.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
</Project>
|
Reference in New Issue
Block a user