#include "apiUrl.hpp" #include "hearthstoneApi.hpp" #include #include #include TEST_CASE("Retrieve API Token", "[generateApiToken]") { const std::string kCredentialsFile{"tests/resources/credentials.json"}; Token aToken(kCredentialsFile); const std::string kTokenContent{aToken.text()}; const std::string::size_type kTokenSize{kTokenContent.size()}; REQUIRE(kTokenSize >= 30); REQUIRE(kTokenSize <= 40); } TEST_CASE("Retrieve number of cards", "[getCardsCount]") { const std::string kCredentialsFile{"tests/resources/credentials.json"}; Token aToken(kCredentialsFile); HearthstoneApi aHearthstoneApi(aToken); const std::string kContentType{"cards"}; const std::string kRegion{"eu"}; ApiUrl aApiUrl(kContentType, kRegion); aApiUrl.setLocale("fr_FR"); aApiUrl.setGameMode("constructed"); aApiUrl.setPageSize("1"); const json kResponse{aHearthstoneApi.makeApiRequest(aApiUrl())}; REQUIRE(kResponse.size() > 0); REQUIRE(kResponse[0].contains("pageCount")); std::uint64_t kNumberOfCards{kResponse[0]["pageCount"]}; REQUIRE(kNumberOfCards == 6033); } // TEST_CASE("Retrieve cards", "[retrieveCards]") { // HearthstoneApiMock aHearthstoneApi; // const std::string kContentType{"cards"}; // const std::string kRegion{"eu"}; // ApiUrl aApiUrl(kContentType, kRegion); // aApiUrl.setLocale("fr_FR"); // aApiUrl.setGameMode("constructed"); // aApiUrl.setPageSize("10"); // const std::string kApiResponse{aHearthstoneApi.makeApiRequest(aApiUrl())}; // REQUIRE(kApiResponse.size() > 5000); // }