TestArrayExample.cpp 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*
  2. * Arduino JSON library
  3. * Benoit Blanchon 2014 - MIT License
  4. */
  5. #include "CppUnitTest.h"
  6. #include "JsonParser.h"
  7. using namespace Microsoft::VisualStudio::CppUnitTestFramework;
  8. using namespace ArduinoJson::Parser;
  9. namespace ArduinoJsonParserTests
  10. {
  11. TEST_CLASS(TestArrayExample)
  12. {
  13. char json[128];
  14. JsonParser<32> parser;
  15. JsonArray array;
  16. public:
  17. TEST_METHOD_INITIALIZE(Initialize)
  18. {
  19. strcpy(json, "[[1.2,3.4],[5.6,7.8]]");
  20. array = parser.parseArray(json);
  21. }
  22. TEST_METHOD(Array_Success_ReturnsTrue)
  23. {
  24. Assert::IsTrue(array.success());
  25. }
  26. TEST_METHOD(Array_GetLength_Returns2)
  27. {
  28. Assert::AreEqual(2, array.getLength());
  29. }
  30. TEST_METHOD(Array_GetArray0_ReturnsInnerArray0)
  31. {
  32. JsonArray innerArray = array.getArray(0);
  33. Assert::AreEqual(2, innerArray.getLength());
  34. Assert::AreEqual(1.2, innerArray.getDouble(0));
  35. Assert::AreEqual(3.4, innerArray.getDouble(1));
  36. }
  37. TEST_METHOD(Array_GetArray1_ReturnsInnerArray1)
  38. {
  39. JsonArray innerArray = array.getArray(1);
  40. Assert::AreEqual(2, innerArray.getLength());
  41. Assert::AreEqual(5.6, innerArray.getDouble(0));
  42. Assert::AreEqual(7.8, innerArray.getDouble(1));
  43. }
  44. };
  45. }