RDK Documentation (Open Sourced RDK Components)
drmTestUtils.h
1 #include <vector>
2 #include <cjson/cJSON.h>
3 
4 #include "CppUTest/TestHarness.h"
5 
6 // Useful macros for checking JSON
7 #define CHECK_JSON_STR_VALUE(o,p,e){cJSON *jsonV = cJSON_GetObjectItem(o, p); \
8  CHECK_TEXT(jsonV != NULL, "Missing '" p "' property in JSON data"); \
9  CHECK_EQUAL_TEXT(true, cJSON_IsString(jsonV), "Property '" p "' value is not a string"); \
10  STRCMP_EQUAL(e, cJSON_GetStringValue(jsonV));}
11 
13 public:
14  TestUtilJsonWrapper(const std::string& jsonStr);
15  TestUtilJsonWrapper(const char *jsonStr, size_t size) : TestUtilJsonWrapper(std::string(jsonStr, size)) {};
16  TestUtilJsonWrapper(const std::vector<uint8_t> jsonData) : TestUtilJsonWrapper(std::string((const char*)jsonData.data(), jsonData.size())) {};
18  cJSON* getJsonObj() { return mJsonObj; };
19 private:
20  cJSON *mJsonObj;
21 };
22 
23 SimpleString StringFrom(const std::vector<std::string>& vec);
24 SimpleString StringFrom(const std::vector<std::uint8_t>& v);
TestUtilJsonWrapper
Definition: drmTestUtils.h:12