#include "precompiled_unittests_adapters.h" #include "precompiled_unittests_OnlineAdapter_Ubiservices.h" #include "adapters/OnlineAdapter_Ubiservices/PackagesService_Ubiservices.h" namespace ITF { using namespace testing; class TestPackageService_Ubiservices : public PackagesService_Ubiservices::PackagesServiceTask { public: virtual bool parseResponse(const char* _body) { return PackagesService_Ubiservices::PackagesServiceTask::parseResponse(_body); } }; TEST(TestPackageService_Ubiservices, test_parsingValidJSON) { TestPackageService_Ubiservices packagesService_Ubiservices; const char* packageJSON = "{\"mapContent\":{\"url\" : \"http://dvsdvsvsdklmsdklmsdvmkl.zip\", \"version\" : 2, \"md5\" : \"424242242424242\"}}"; bool isValid = packagesService_Ubiservices.parseResponse(packageJSON); const ITF_MAP& onlinePackages = packagesService_Ubiservices.m_onlinePackages; String8 url("http://dvsdvsvsdklmsdklmsdvmkl.zip"); String8 md5("424242242424242"); String8 packageName("mapContent"); packageName.toLower(); EXPECT_TRUE(isValid); EXPECT_EQ(url, onlinePackages[packageName].m_url.cStr()); EXPECT_EQ(md5, onlinePackages[packageName].m_md5.cStr()); EXPECT_EQ(2U, onlinePackages[packageName].m_version); } TEST(TestPackageService_Ubiservices, test_parsingInvalidJSON) { TestPackageService_Ubiservices packagesService_Ubiservices; const char* packageJSON = "{\"mapContent\":{\"url\" : \"http://dvsdvsvsdklmsdklmsdvmkl.zip\" \"version\" : 2, \"md5\" : \"424242242424242\"}}"; bool isValid = packagesService_Ubiservices.parseResponse(packageJSON); EXPECT_FALSE(isValid); } }