From ab280e7beef86d95335d0538fa1f6a6dfdd1125b Mon Sep 17 00:00:00 2001 From: Aotrix <9aotrix@protonmail.com> Date: Mon, 26 Jan 2026 23:31:02 +0100 Subject: added a test to count the number of cards --- battleNetApi/src/hearthstoneApi.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'battleNetApi/src/hearthstoneApi.cpp') diff --git a/battleNetApi/src/hearthstoneApi.cpp b/battleNetApi/src/hearthstoneApi.cpp index 026737a..945425f 100644 --- a/battleNetApi/src/hearthstoneApi.cpp +++ b/battleNetApi/src/hearthstoneApi.cpp @@ -3,11 +3,8 @@ #include HearthstoneApi::HearthstoneApi(Token &&iToken) : mToken(iToken), mAuthorizationHeader(authorizationHeader()) {} +HearthstoneApi::HearthstoneApi(const Token &iToken) : mToken(iToken), mAuthorizationHeader(authorizationHeader()) {} -std::uint64_t HearthstoneApi::numberOfCards(const std::string &iApiResponse) const { - const std::string aCardCountRegex{"\"cardCount\":(\\d+)"}; - return valueInJson(iApiResponse, aCardCountRegex); -} std::string HearthstoneApi::authorizationHeader() { return std::format("Authorization: Bearer {}", mToken.text()); } size_t HearthstoneApi::curlCallbackStringOutput(void *iContent, size_t iSize, size_t iNmemb, std::string *iS) { @@ -21,20 +18,21 @@ size_t HearthstoneApi::curlCallbackStringOutput(void *iContent, size_t iSize, si return kNewLength; } -std::string HearthstoneApi::makeApiRequest(const std::string &iUrl) const { +json HearthstoneApi::makeApiRequest(const std::string &iUrl) const { CURL *curl = curl_easy_init(); - std::string request_output; + std::string aRequestOutput; if (curl) { curl_easy_setopt(curl, CURLOPT_URL, iUrl.c_str()); curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, curlCallbackStringOutput); - curl_easy_setopt(curl, CURLOPT_WRITEDATA, &request_output); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &aRequestOutput); struct curl_slist *chunk = nullptr; chunk = curl_slist_append(chunk, mAuthorizationHeader.c_str()); curl_easy_setopt(curl, CURLOPT_HTTPHEADER, chunk); curl_easy_perform(curl); curl_easy_cleanup(curl); } - return request_output; + json aOutputJson = json::parse(aRequestOutput); + return aOutputJson; } -- cgit v1.2.3