| 99 | } // namespace |
| 100 | |
| 101 | bool runResponseCacheTest( |
| 102 | int statusCode, |
| 103 | const std::string& methodStr, |
| 104 | const HttpHeaders& httpHeaders) { |
| 105 | std::unique_ptr<IAssetResponse> mockResponse = |
| 106 | std::make_unique<MockAssetResponse>( |
| 107 | static_cast<uint16_t>(statusCode), |
| 108 | "app/json", |
| 109 | httpHeaders, |
| 110 | std::vector<std::byte>()); |
| 111 | |
| 112 | std::shared_ptr<IAssetRequest> mockRequest = |
| 113 | std::make_shared<MockAssetRequest>( |
| 114 | methodStr, |
| 115 | "test.com", |
| 116 | HttpHeaders{}, |
| 117 | std::move(mockResponse)); |
| 118 | |
| 119 | std::unique_ptr<MockStoreCacheDatabase> ownedMockCacheDatabase = |
| 120 | std::make_unique<MockStoreCacheDatabase>(); |
| 121 | MockStoreCacheDatabase* mockCacheDatabase = ownedMockCacheDatabase.get(); |
| 122 | |
| 123 | std::shared_ptr<CachingAssetAccessor> cacheAssetAccessor = |
| 124 | std::make_shared<CachingAssetAccessor>( |
| 125 | spdlog::default_logger(), |
| 126 | std::make_unique<MockAssetAccessor>(mockRequest), |
| 127 | std::move(ownedMockCacheDatabase)); |
| 128 | |
| 129 | std::shared_ptr<MockTaskProcessor> mockTaskProcessor = |
| 130 | std::make_shared<MockTaskProcessor>(); |
| 131 | |
| 132 | AsyncSystem asyncSystem(mockTaskProcessor); |
| 133 | cacheAssetAccessor |
| 134 | ->get(asyncSystem, "test.com", std::vector<IAssetAccessor::THeader>{}) |
| 135 | .wait(); |
| 136 | |
| 137 | return mockCacheDatabase->storeResponseCall; |
| 138 | } |
| 139 | |
| 140 | TEST_CASE("Test the condition of caching the request") { |
| 141 | SUBCASE("Cache request") { |
no test coverage detected