JD2022-TU1/main/extern/UbiServices/custom/testsUnit/http/curl/mockCurlImpl.h

67 lines
2.9 KiB
C++

////////////////////////////////////////////////////////////////////////////////
// (c) Copyright, Ubisoft Entertainment Inc. || Created by Harbour //
////////////////////////////////////////////////////////////////////////////////
#pragma once
#include <gmock/gmock.h>
#include <ubiservices/core/configs/config.h>
#include "ubiservices/core/http/curl/curlImpl.h"
namespace US_NS {;
class MockCurlImpl;
namespace MockCurlImpl_BF
{
void setInitExpectations(MockCurlImpl* impl, uint32* multiHandle);
void setInitExpectations(MockCurlImpl& impl, uint32* multiHandle);
}
class MockCurlImpl : public ICurlImpl
{
public:
MockCurlImpl();
MOCK_METHOD6(globalInitMem, CURLcode(uint32 flags, curl_malloc_callback m,
curl_free_callback f, curl_realloc_callback r,
curl_strdup_callback s, curl_calloc_callback c));
MOCK_METHOD0(globalCleanup, void());
MOCK_METHOD0(easyInit, CURL*());
MOCK_METHOD1(easyCleanup, void(CURL* handle));
MOCK_METHOD3(easyGetInfo, CURLcode(CURL* handle, CURLINFO info, long* arg));
MOCK_METHOD3(easyGetInfo, CURLcode(CURL* handle, CURLINFO info, char** arg));
MOCK_METHOD3(easyGetInfo, CURLcode(CURL* handle, CURLINFO info, struct curl_slist** arg));
MOCK_METHOD3(easyGetInfo, CURLcode(CURL* handle, CURLINFO info, double* arg));
MOCK_METHOD3(easySetOpt, CURLcode(CURL* handle, CURLoption option, curl_sockopt_callback parameter));
MOCK_METHOD3(easySetOpt, CURLcode(CURL* handle, CURLoption option, curl_write_callback parameter));
MOCK_METHOD3(easySetOpt, CURLcode(CURL* handle, CURLoption option, curl_seek_callback parameter));
MOCK_METHOD3(easySetOpt, CURLcode(CURL* handle, CURLoption option, curl_ssl_ctx_callback parameter));
MOCK_METHOD3(easySetOpt, CURLcode(CURL* handle, CURLoption option, curl_debug_callback parameter));
MOCK_METHOD3(easySetOpt, CURLcode(CURL* handle, CURLoption option, void* parameter));
MOCK_METHOD3(easySetOpt, CURLcode(CURL* handle, CURLoption option, const char* parameter));
MOCK_METHOD3(easySetOpt, CURLcode(CURL* handle, CURLoption option, long parameter));
#if !defined(CURL_OFF_T_IS_LONG)
MOCK_METHOD3(easySetOpt, CURLcode(CURL* handle, CURLoption option, curl_off_t parameter));
#endif
MOCK_METHOD2(easyPause, CURLcode(CURL* handle, int bitmask));
MOCK_METHOD1(easyStrError, const char*(CURLcode errornum));
// Multi interface
MOCK_METHOD0(multiInit, CURLM*());
MOCK_METHOD1(multiCleanup, CURLMcode(CURLM* multiHandle));
MOCK_METHOD2(multiAddHandle, CURLMcode(CURLM* multiHandle, CURL* easyHandle));
MOCK_METHOD2(multiRemoveHandle, CURLMcode(CURLM* multiHandle, CURL* easyHandle));
MOCK_METHOD2(multiInfoRead, CURLMsg*(CURLM* multiHandle, int32* msgsInQueue));
MOCK_METHOD2(multiPerform, CURLMcode(CURLM* multiHandle, int32* runningHandles));
MOCK_METHOD1(multiStrError, const char*(CURLMcode errornum));
};
};