JD2022-TU1/main/unittests/engine/OnlineContent/OnlineContent_Manager.cpp

43 lines
No EOL
1.7 KiB
C++

#include "precompiled_unittests_engine.h"
#include "engine/OnlineContent/OnlineContent_Manager.h"
#include <core/serializer/ZSerializerObjectJSon.h>
#include <ubiservices/services/http/httpHeader.h>
#include "core/file/URL.h"
namespace ITF
{
// gtest & gmock use namespace testing
using namespace testing;
TEST(OnlineContent_Manager, test_AddAUrlResolving)
{
CREATE_CLASS_SINGLETON(OnlineContent_Manager);
const char *json1 = "{\"__class\":\"ContentAuthorizationEntry\",\"baseUrl\":\"http://blabla/fedffere/MyMap1\",\"headers\":{\"Cookie\":\"OK\",\"x-custom\":\"oui\"},\"query\":\"yep\",\"urls\":{\"jmcs://contents/MyMap1/e.jpg\":\"http://ubistatic/MyMap1/e.jpg?auth=*~gmanc=dzff235452\",\"jmcs://contents/MyMap1/gf.jpg\":\"http://ubistatic/MyMap1/gf.jpg\"}}";
CSerializerObjectJSon serializer;
ContentAuthorizationEntry entry;
if (serializer.OpenBuffer(json1, true))
{
entry.Serialize(&serializer, 0);
serializer.Clear();
}
URL url1("jmcs://contents/MyMap1/e.jpg");
URL url2("jmcs://contents/MyMap1/gf.jpg");
URL url3("jmcs://contents/MyMap1/fg.jpg");
ONLINECONTENT_MANAGER->add(entry.m_name, entry);
ONLINECONTENT_MANAGER->resolveContentUrl(url1);
ONLINECONTENT_MANAGER->resolveContentUrl(url2);
ONLINECONTENT_MANAGER->resolveContentUrl(url3);
EXPECT_STREQ("http://ubistatic/MyMap1/e.jpg?auth=*~gmanc=dzff235452", url1.asString8().cStr());
EXPECT_STREQ("http://ubistatic/MyMap1/gf.jpg", url2.asString8().cStr());
EXPECT_STREQ("jmcs://contents/MyMap1/fg.jpg", url3.asString8().cStr());
DESTROY_CLASS_SINGLETON(OnlineContent_Manager);
}
}