From e097c5229dc4efc46271b896294b6d882d824a0b Mon Sep 17 00:00:00 2001 From: Lukasz Wojciechowski Date: Fri, 17 Oct 2014 20:27:59 +0200 Subject: [PATCH] Check creation of maximal count of cynara requests Request creating function should return CYNARA_API_MAX_PENDING_REQUESTS, when maximal number of possible requests (2^16) is created. Change-Id: Icdbbf6e6377a73892ccd8f4affa31756f6161414 --- tests/cynara-tests/test_cases_async.cpp | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/tests/cynara-tests/test_cases_async.cpp b/tests/cynara-tests/test_cases_async.cpp index 066dcc1..256b158 100644 --- a/tests/cynara-tests/test_cases_async.cpp +++ b/tests/cynara-tests/test_cases_async.cpp @@ -28,21 +28,43 @@ #include +#include + +using namespace CynaraTestClientAsync; + void tca01_initialize_func() { - CynaraTestClientAsync::Client client; + Client client; } void tca02_empty_cache_miss_func() { std::string testNo("02"); - CynaraTestClientAsync::Client client; + Client client; client.checkCache({testNo}, CYNARA_API_CACHE_MISS); client.checkCache({testNo}, CYNARA_API_CACHE_MISS); } +void tca03_create_max_requests_func() +{ + std::string testNo("03"); + cynara_check_id id; + RequestEntity callbackData = {RequestFunction(), 0, CYNARA_CALL_CAUSE_FINISH}; + + Client client; + + for (auto i = 0; i <= UINT16_MAX; ++i) { + client.createRequest({testNo, i}, id, callbackData, CYNARA_API_SUCCESS); + client.assertStatus(READWRITE); + } + + client.createRequest({testNo}, id, callbackData, CYNARA_API_MAX_PENDING_REQUESTS); + client.assertStatus(READWRITE); +} + RUNNER_TEST_GROUP_INIT(cynara_async_tests) RUN_CYNARA_TEST(tca01_initialize) RUN_CYNARA_TEST(tca02_empty_cache_miss) +RUN_CYNARA_TEST(tca03_create_max_requests) -- 2.7.4