From c777502a1c22b240f66069831e6f0cb1e7e41b64 Mon Sep 17 00:00:00 2001 From: Aotrix <9aotrix@protonmail.com> Date: Sat, 10 Oct 2026 16:09:48 +0200 Subject: Use string_view and delete gameView --- battleNetApi/tests/src/hearthstoneApiTests.cpp | 43 +++++++++++++++++--------- 1 file changed, 29 insertions(+), 14 deletions(-) (limited to 'battleNetApi/tests') diff --git a/battleNetApi/tests/src/hearthstoneApiTests.cpp b/battleNetApi/tests/src/hearthstoneApiTests.cpp index 192f38c..c3dfc59 100644 --- a/battleNetApi/tests/src/hearthstoneApiTests.cpp +++ b/battleNetApi/tests/src/hearthstoneApiTests.cpp @@ -15,7 +15,9 @@ #include #include -TEST_CASE("Retrieve number of cards", "[countCards]") { +TEST_CASE("Retrieve number of cards", + "[countCards]") +{ const std::string aContentType{"cards"}; const std::string aRegion{"eu"}; bnet::ApiUrl aApiUrl(aContentType, aRegion); @@ -37,7 +39,9 @@ TEST_CASE("Retrieve number of cards", "[countCards]") { REQUIRE(aNumberOfCards >= aExpectedNumberOfCards); } -TEST_CASE("Retrieve page once", "[retrievePageOnce]") { +TEST_CASE("Retrieve page once", + "[retrievePageOnce]") +{ const std::string aContentType{"cards"}; const std::string aRegion{"eu"}; bnet::ApiUrl aApiUrl(aContentType, aRegion); @@ -55,14 +59,16 @@ TEST_CASE("Retrieve page once", "[retrievePageOnce]") { REQUIRE(aApiResponse["cards"].size() == 16); } -TEST_CASE("Retrieve pages 10 times without parallelization", "[retrievePagesNoParallel]") { +TEST_CASE("Retrieve pages 10 times without parallelization", + "[retrievePagesNoParallel]") +{ const std::string aContentType{"cards"}; const std::string aRegion{"eu"}; bnet::ApiUrl aApiUrl(aContentType, aRegion); aApiUrl.setLocale("fr_FR"); aApiUrl.setGameMode("constructed"); aApiUrl.setPageSize(16); - aApiUrl.setPage("1"); + aApiUrl.setPage(1); bnet::HearthstoneTokenBuilder aHearthstoneTokenBuilder("resources/credentials.json"); const std::string aTokenText{aHearthstoneTokenBuilder.allowBattleNetApiCall() .allowUpdateSourceFile() @@ -76,23 +82,26 @@ TEST_CASE("Retrieve pages 10 times without parallelization", "[retrievePagesNoPa const int aNumberOfRetrievals{10}; const int aNumberOfPages{aApiResponse["pageCount"]}; REQUIRE(aNumberOfPages >= aNumberOfRetrievals); - for (int i{1}; i < aNumberOfRetrievals; ++i) { + for (int i{1}; i < aNumberOfRetrievals; ++i) + { REQUIRE(aApiResponse["cards"].size() == 16); - aApiUrl.setPage(std::to_string(i + 1)); + aApiUrl.setPage(i + 1); aApiResponse = bnet::HearthstoneApi::makeApiRequest(aApiUrl, aTokenText); } REQUIRE(aApiResponse["cards"].size() >= 1); REQUIRE(aApiResponse["cards"].size() <= 16); } -TEST_CASE("Retrieve pages 10 times with parallelization", "[retrievePagesParallel]") { +TEST_CASE("Retrieve pages 10 times with parallelization", + "[retrievePagesParallel]") +{ const std::string aContentType{"cards"}; const std::string aRegion{"eu"}; bnet::ApiUrl aApiUrl(aContentType, aRegion); aApiUrl.setLocale("fr_FR"); aApiUrl.setGameMode("constructed"); aApiUrl.setPageSize(16); - aApiUrl.setPage("1"); + aApiUrl.setPage(1); std::vector aRequests; bnet::HearthstoneTokenBuilder aHearthstoneTokenBuilder("resources/credentials.json"); const std::string aTokenText{aHearthstoneTokenBuilder.allowBattleNetApiCall() @@ -106,27 +115,32 @@ TEST_CASE("Retrieve pages 10 times with parallelization", "[retrievePagesParalle const int aNumberOfPages{aFirstPageJson["pageCount"]}; const int aNumberOfRetrievals{10}; REQUIRE(aNumberOfPages >= aNumberOfRetrievals); - for (int i{1}; i < aNumberOfRetrievals; ++i) { - aApiUrl.setPage(std::to_string(i + 1)); + for (int i{1}; i < aNumberOfRetrievals; ++i) + { + aApiUrl.setPage(i + 1); aRequests.emplace_back(aApiUrl.text()); } std::vector aApiResponses = bnet::HearthstoneApi::makeApiRequest(aRequests, aTokenText); aApiResponses.emplace(aApiResponses.begin(), aFirstPageJson); REQUIRE(aApiResponses.size() == aNumberOfRetrievals); - for (const nlohmann::json &aApiResponse : aApiResponses) { + for (const nlohmann::json& aApiResponse : aApiResponses) + { REQUIRE(aApiResponse["cards"].size() == 16); } } -TEST_CASE("Merge two card lists from two page requests", "[Merge pages]") { +TEST_CASE("Merge two card lists from two page requests", + "[Merge pages]") +{ std::ifstream aFirstPageFile{"resources/page_merge_00.json"}; nlohmann::json aFirstPageJson = nlohmann::json::parse(aFirstPageFile); std::ifstream aSecondPageFile{"resources/page_merge_01.json"}; const nlohmann::json aSecondPageJson = nlohmann::json::parse(aSecondPageFile); nlohmann::json::reference aMergedCards = aFirstPageJson["cards"]; - for (auto &card : aSecondPageJson["cards"]) { + for (auto& card : aSecondPageJson["cards"]) + { aMergedCards.emplace_back(std::move(card)); } REQUIRE(aMergedCards.size() == 32); @@ -135,7 +149,8 @@ TEST_CASE("Merge two card lists from two page requests", "[Merge pages]") { } TEST_CASE("Retrieve a single page with HearthstoneApi::downloadCards", - "[retrievePageOnceHearthstoneApi]") { + "[retrievePageOnceHearthstoneApi]") +{ const std::string aContentType{"cards"}; const std::string aRegion{"eu"}; bnet::ApiUrl aApiUrl(aContentType, aRegion); -- cgit v1.2.3