File: CMakeLists.txt

package info (click to toggle)
aws-crt-python 0.20.4%2Bdfsg-1~bpo12%2B1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm-backports
  • size: 72,656 kB
  • sloc: ansic: 381,805; python: 23,008; makefile: 6,251; sh: 4,536; cpp: 699; ruby: 208; java: 77; perl: 73; javascript: 46; xml: 11
file content (348 lines) | stat: -rw-r--r-- 17,537 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
include(AwsTestHarness)
enable_testing()

option(BYO_CRYPTO "Don't build a tls implementation or link against a crypto interface. This feature is only for unix builds currently." OFF)

if(BYO_CRYPTO)
    set(ENABLE_NET_TESTS OFF)

    add_test_case(test_s3_client_byo_crypto_no_options)
    add_test_case(test_s3_client_byo_crypto_with_options)
endif()

file(GLOB TEST_SRC "*.c")
file(GLOB TEST_HDRS "*.h")
file(GLOB TESTS ${TEST_HDRS} ${TEST_SRC})

add_test_case(test_s3_copy_http_message)
add_test_case(test_s3_message_util_assign_body)
add_test_case(test_s3_ranged_get_object_message_new)
add_test_case(test_s3_set_multipart_request_path)
add_test_case(test_s3_create_multipart_upload_message_new)
add_test_case(test_s3_upload_part_message_new)
add_test_case(test_s3_upload_part_message_fail)
add_test_case(test_s3_complete_multipart_message_new)
add_test_case(test_s3_abort_multipart_upload_message_new)

add_net_test_case(test_s3_client_create_destroy)
add_net_test_case(test_s3_client_create_error)
add_net_test_case(test_s3_client_monitoring_options_override)
add_net_test_case(test_s3_client_proxy_ev_settings_override)
add_net_test_case(test_s3_client_tcp_keep_alive_options_override)
add_net_test_case(test_s3_client_max_active_connections_override)
add_test_case(test_s3_client_get_max_active_connections)
add_test_case(test_s3_request_create_destroy)
add_test_case(test_s3_client_queue_requests)
add_test_case(test_s3_meta_request_body_streaming)
add_test_case(test_s3_update_meta_requests_trigger_prepare)
add_test_case(test_s3_client_update_connections_finish_result)

add_net_test_case(test_s3_client_exceed_retries)
add_net_test_case(test_s3_client_acquire_connection_fail)
add_net_test_case(test_s3_meta_request_fail_prepare_request)
add_net_test_case(test_s3_meta_request_sign_request_fail)
add_net_test_case(test_s3_meta_request_send_request_finish_fail)
add_net_test_case(test_s3_auto_range_put_missing_upload_id)

add_net_test_case(test_s3_cancel_mpu_create_not_sent)
add_net_test_case(test_s3_cancel_mpu_create_completed)
add_net_test_case(test_s3_cancel_mpu_one_part_completed)
add_net_test_case(test_s3_cancel_mpu_one_part_completed_async)
add_net_test_case(test_s3_cancel_mpu_all_parts_completed)
add_net_test_case(test_s3_cancel_mpu_cancellable_requests)
add_net_test_case(test_s3_pause_mpu_cancellable_requests)
add_net_test_case(test_s3_cancel_mpd_nothing_sent)
add_net_test_case(test_s3_cancel_mpd_one_part_sent)
add_net_test_case(test_s3_cancel_mpd_one_part_completed)
add_net_test_case(test_s3_cancel_mpd_two_parts_completed)
add_net_test_case(test_s3_cancel_mpd_head_object_sent)
add_net_test_case(test_s3_cancel_mpd_head_object_completed)
add_net_test_case(test_s3_cancel_mpd_empty_object_get_with_part_number_1_sent)
add_net_test_case(test_s3_cancel_mpd_empty_object_get_with_part_number_1_completed)
add_net_test_case(test_s3_cancel_mpd_pending_streaming)
add_net_test_case(test_s3_cancel_prepare)

add_net_test_case(test_s3_get_object_tls_disabled)
add_net_test_case(test_s3_get_object_tls_enabled)
add_net_test_case(test_s3_get_object_tls_default)
add_net_test_case(test_s3_get_object_less_than_part_size)
add_net_test_case(test_s3_get_object_empty_object)
add_net_test_case(test_s3_get_object_multiple)
add_net_test_case(test_s3_get_object_sse_kms)
add_net_test_case(test_s3_get_object_sse_aes256)
add_net_test_case(test_s3_get_object_backpressure_small_increments)
add_net_test_case(test_s3_get_object_backpressure_big_increments)
add_net_test_case(test_s3_get_object_backpressure_initial_size_zero)
add_net_test_case(test_s3_get_object_part)
add_net_test_case(test_s3_no_signing)
add_net_test_case(test_s3_signing_override)
add_net_test_case(test_s3_put_object_tls_disabled)
add_net_test_case(test_s3_put_object_tls_enabled)
add_net_test_case(test_s3_put_object_tls_default)
add_net_test_case(test_s3_multipart_put_object_with_acl)
add_net_test_case(test_s3_put_object_multiple)
add_net_test_case(test_s3_put_object_multiple_with_filepath)
add_net_test_case(test_s3_put_object_less_than_part_size)
add_net_test_case(test_s3_put_object_less_than_part_size_with_content_encoding)
add_net_test_case(test_s3_put_object_mpu_with_content_encoding)
add_net_test_case(test_s3_put_object_multipart_threshold)
add_net_test_case(test_s3_put_object_multipart_threshold_less_than_part_size)
add_net_test_case(test_s3_put_object_empty_object)
add_net_test_case(test_s3_put_object_with_part_remainder)
add_net_test_case(test_s3_put_object_sse_kms)
add_net_test_case(test_s3_put_object_sse_kms_multipart)
add_net_test_case(test_s3_put_object_sse_aes256)
add_net_test_case(test_s3_put_object_sse_aes256_multipart)
add_net_test_case(test_s3_put_object_sse_c_aes256_multipart)
add_net_test_case(test_s3_put_object_sse_c_aes256_multipart_with_checksum)
add_net_test_case(test_s3_put_object_singlepart_no_content_md5_enabled)
add_net_test_case(test_s3_put_object_singlepart_no_content_md5_disabled)
add_net_test_case(test_s3_put_object_singlepart_correct_content_md5_enabled)
add_net_test_case(test_s3_put_object_singlepart_correct_content_md5_disabled)
add_net_test_case(test_s3_put_object_singlepart_incorrect_content_md5_enabled)
add_net_test_case(test_s3_put_object_singlepart_incorrect_content_md5_disabled)
add_net_test_case(test_s3_put_object_multipart_no_content_md5_enabled)
add_net_test_case(test_s3_put_object_multipart_no_content_md5_disabled)
add_net_test_case(test_s3_put_object_multipart_correct_content_md5_enabled)
add_net_test_case(test_s3_put_object_multipart_correct_content_md5_disabled)
add_net_test_case(test_s3_put_object_multipart_incorrect_content_md5_enabled)
add_net_test_case(test_s3_put_object_multipart_incorrect_content_md5_disabled)
add_net_test_case(test_s3_upload_part_message_with_content_md5)
add_net_test_case(test_s3_upload_part_message_without_content_md5)
add_net_test_case(test_s3_create_multipart_upload_message_with_content_md5)
add_net_test_case(test_s3_complete_multipart_message_with_content_md5)
add_net_test_case(test_s3_put_object_double_slashes)
add_net_test_case(test_s3_put_object_no_content_length)
add_net_test_case(test_s3_put_object_single_part_no_content_length)
add_net_test_case(test_s3_put_object_zero_size_no_content_length)
add_net_test_case(test_s3_put_large_object_no_content_length_with_checksum)
add_net_test_case(test_s3_put_object_no_content_length_multiple)
add_net_test_case(test_s3_put_object_async_singlepart)
add_net_test_case(test_s3_put_object_async_multipart)
add_net_test_case(test_s3_put_object_async_read_completes_synchronously)
add_net_test_case(test_s3_put_object_small_reads)
add_net_test_case(test_s3_put_object_async_small_reads)
add_net_test_case(test_s3_put_object_async_no_content_length_partial_part)
add_net_test_case(test_s3_put_object_async_no_content_length_1part)
add_net_test_case(test_s3_put_object_async_no_content_length_empty_part2)
add_net_test_case(test_s3_put_object_async_no_content_length_2parts)
add_net_test_case(test_s3_put_object_async_fail_reading)
add_net_test_case(test_s3_download_empty_file_with_checksum)
add_net_test_case(test_s3_download_single_part_file_with_checksum)
add_net_test_case(test_s3_download_multipart_file_with_checksum)

if(ENABLE_MRAP_TESTS)
    add_net_test_case(test_s3_get_object_less_than_part_size_mrap)
    add_net_test_case(test_s3_get_object_multipart_mrap)
    add_net_test_case(test_s3_put_object_less_than_part_size_mrap)
    add_net_test_case(test_s3_put_object_multipart_mrap)
endif()

add_net_test_case(test_s3_round_trip)
add_net_test_case(test_s3_round_trip_default_get)
add_net_test_case(test_s3_round_trip_multipart_get_fc)
add_net_test_case(test_s3_round_trip_default_get_fc)
add_net_test_case(test_s3_round_trip_mpu_multipart_get_fc)
add_net_test_case(test_s3_round_trip_mpu_multipart_get_with_list_algorithm_fc)
add_net_test_case(test_s3_round_trip_mpu_default_get_fc)
add_net_test_case(test_s3_round_trip_with_filepath)
add_net_test_case(test_s3_round_trip_mpu_with_filepath)
add_net_test_case(test_s3_round_trip_with_filepath_no_content_length)
add_net_test_case(test_s3_round_trip_mpu_with_filepath_no_content_length)
add_net_test_case(test_s3_chunked_then_unchunked)

add_net_test_case(test_s3_cancel_mpu_one_part_completed_fc)
add_net_test_case(test_s3_cancel_mpd_one_part_completed_fc)

add_net_test_case(test_s3_meta_request_default)
add_net_test_case(test_s3_put_object_fail_headers_callback)
add_net_test_case(test_s3_put_object_fail_body_callback)
add_net_test_case(test_s3_get_object_fail_headers_callback)
add_net_test_case(test_s3_get_object_fail_body_callback)
add_net_test_case(test_s3_default_fail_headers_callback)
add_net_test_case(test_s3_default_invoke_headers_callback_on_error)
add_net_test_case(test_s3_default_invoke_headers_callback_cancels_on_error)
add_net_test_case(test_s3_get_object_invoke_headers_callback_on_error)
add_net_test_case(test_s3_put_object_invoke_headers_callback_on_error)
add_net_test_case(test_s3_put_object_invoke_headers_callback_on_error_with_user_cancellation)
add_net_test_case(test_s3_default_fail_body_callback)
add_net_test_case(test_s3_default_fail_operation_name)
add_net_test_case(test_s3_error_missing_file)
add_net_test_case(test_s3_existing_host_entry)
add_net_test_case(test_s3_put_fail_object_invalid_request)
add_net_test_case(test_s3_put_fail_object_invalid_send_filepath)
add_net_test_case(test_s3_put_fail_object_bad_parallel_read_stream)
add_net_test_case(test_s3_put_fail_object_inputstream_fail_reading)
add_net_test_case(test_s3_put_fail_object_inputstream_mismatch_content_length)
add_net_test_case(test_s3_put_single_part_fail_object_inputstream_fail_reading)
add_net_test_case(test_s3_put_single_part_fail_object_inputstream_mismatch_content_length)
add_net_test_case(test_s3_put_object_clamp_part_size)
add_net_test_case(test_s3_auto_ranged_get_sending_user_agent)
add_net_test_case(test_s3_auto_ranged_put_sending_user_agent)
add_net_test_case(test_s3_default_sending_meta_request_user_agent)
add_net_test_case(test_s3_range_requests)
add_net_test_case(test_s3_not_satisfiable_range)
add_net_test_case(test_s3_invalid_start_range_greator_than_end_range)
add_net_test_case(test_s3_invalid_empty_file_with_range)

add_net_test_case(test_s3_bad_endpoint)
add_net_test_case(test_s3_different_endpoints)

add_test_case(test_s3_request_type_operation_name)
add_test_case(test_s3_replace_quote_entities)
add_test_case(test_s3_strip_quotes)
add_test_case(test_s3_parse_request_range_header)
add_test_case(test_s3_parse_content_range_response_header)
add_test_case(test_s3_parse_content_length_response_header)
add_test_case(test_s3_get_num_parts_and_get_part_range)
add_test_case(test_s3_mpu_get_part_size_and_num_parts)
add_test_case(test_s3_aws_xml_get_body_at_path)
add_test_case(test_add_user_agent_header)

add_test_case(test_get_existing_platform_info)
add_test_case(test_get_nonexistent_platform_info)
add_test_case(test_get_platforms_with_recommended_config)
add_net_test_case(load_platform_info_from_global_state_sanity_test)

add_net_test_case(sha1_nist_test_case_1)
add_net_test_case(sha1_nist_test_case_2)
add_net_test_case(sha1_nist_test_case_3)
add_net_test_case(sha1_nist_test_case_4)
add_net_test_case(sha1_nist_test_case_5)
add_net_test_case(sha1_nist_test_case_5_truncated)
add_net_test_case(sha1_nist_test_case_6)
add_net_test_case(sha1_test_invalid_buffer)
add_net_test_case(sha1_test_oneshot)
add_net_test_case(sha1_test_invalid_state)

add_net_test_case(sha256_nist_test_case_1)
add_net_test_case(sha256_nist_test_case_2)
add_net_test_case(sha256_nist_test_case_3)
add_net_test_case(sha256_nist_test_case_4)
add_net_test_case(sha256_nist_test_case_5)
add_net_test_case(sha256_nist_test_case_5_truncated)
add_net_test_case(sha256_nist_test_case_6)
add_net_test_case(sha256_test_invalid_buffer)
add_net_test_case(sha256_test_oneshot)
add_net_test_case(sha256_test_invalid_state)

add_test_case(crc32_nist_test_case_1)
add_test_case(crc32_nist_test_case_2)
add_test_case(crc32_nist_test_case_3)
add_test_case(crc32_nist_test_case_4)
add_test_case(crc32_nist_test_case_5)
add_test_case(crc32_nist_test_case_5_truncated)
add_test_case(crc32_nist_test_case_6)
add_test_case(crc32_test_invalid_buffer)
add_test_case(crc32_test_oneshot)
add_test_case(crc32_test_invalid_state)

add_test_case(crc32c_nist_test_case_1)
add_test_case(crc32c_nist_test_case_2)
add_test_case(crc32c_nist_test_case_3)
add_test_case(crc32c_nist_test_case_4)
add_test_case(crc32c_nist_test_case_5)
add_test_case(crc32c_nist_test_case_5_truncated)
add_test_case(crc32c_nist_test_case_6)
add_test_case(crc32c_test_invalid_buffer)
add_test_case(crc32c_test_oneshot)
add_test_case(crc32c_test_invalid_state)

add_net_test_case(verify_checksum_stream)
add_net_test_case(verify_chunk_stream)

add_net_test_case(test_s3_copy_small_object)
add_net_test_case(test_s3_copy_small_object_special_char)
add_net_test_case(test_s3_multipart_copy_large_object_special_char)
add_net_test_case(test_s3_multipart_copy_large_object)
add_net_test_case(test_s3_copy_object_invalid_source_key)
add_net_test_case(test_s3_copy_source_prefixed_by_slash)
add_net_test_case(test_s3_copy_source_prefixed_by_slash_multipart)
add_net_test_case(test_s3_put_pause_resume_happy_path)
add_net_test_case(test_s3_put_pause_resume_all_parts_done)
add_net_test_case(test_s3_put_pause_resume_invalid_resume_data)
add_net_test_case(test_s3_put_pause_resume_invalid_content_length)
add_net_test_case(test_s3_upload_review)
add_net_test_case(test_s3_upload_review_no_content_length)
add_net_test_case(test_s3_upload_review_rejection)

add_net_test_case(test_s3_list_bucket_init_mem_safety)
add_net_test_case(test_s3_list_bucket_init_mem_safety_optional_copies)
add_net_test_case(test_s3_list_bucket_valid)

# Tests against local mock server
if(ENABLE_MOCK_SERVER_TESTS)
    add_net_test_case(multipart_upload_mock_server)
    add_net_test_case(multipart_upload_checksum_with_retry_mock_server)
    add_net_test_case(multipart_download_checksum_with_retry_mock_server)
    add_net_test_case(async_internal_error_from_complete_multipart_mock_server)
    add_net_test_case(async_access_denied_from_complete_multipart_mock_server)
    add_net_test_case(get_object_modified_mock_server)
    add_net_test_case(get_object_invalid_responses_mock_server)
    add_net_test_case(get_object_mismatch_checksum_responses_mock_server)
    add_net_test_case(get_object_throughput_failure_mock_server)
    add_net_test_case(upload_part_invalid_response_mock_server)
    add_net_test_case(upload_part_async_invalid_response_mock_server)
    add_net_test_case(resume_first_part_not_completed_mock_server)
    add_net_test_case(resume_multi_page_list_parts_mock_server)
    add_net_test_case(resume_list_parts_failed_mock_server)
    add_net_test_case(resume_after_finished_mock_server)
    add_net_test_case(multipart_upload_proxy_mock_server)
    add_net_test_case(endpoint_override_mock_server)

    add_net_test_case(s3express_provider_sanity_mock_server)
    add_net_test_case(s3express_provider_get_credentials_mock_server)
    add_net_test_case(s3express_provider_get_credentials_multiple_mock_server)
    add_net_test_case(s3express_provider_get_credentials_cancel_mock_server)
    add_net_test_case(s3express_provider_get_credentials_cache_mock_server)
    add_net_test_case(s3express_provider_background_refresh_mock_server)
    add_net_test_case(s3express_provider_background_refresh_remove_inactive_creds_mock_server)
    add_net_test_case(s3express_provider_stress_mock_server)

    add_net_test_case(s3express_client_sanity_test_mock_server)
    add_net_test_case(s3express_client_sanity_override_test_mock_server)
    add_net_test_case(request_time_too_skewed_mock_server)
endif()

add_net_test_case(s3express_provider_long_running_session_refresh)

add_net_test_case(s3express_client_put_object)
add_net_test_case(s3express_client_put_object_multipart)
add_net_test_case(s3express_client_put_object_multipart_multiple)
add_net_test_case(s3express_client_put_object_long_running_session_refresh)
add_net_test_case(s3express_client_get_object)
add_net_test_case(s3express_client_get_object_multiple)
add_net_test_case(s3express_client_get_object_create_session_error)

add_net_test_case(meta_request_auto_ranged_get_new_error_handling)
add_net_test_case(meta_request_auto_ranged_put_new_error_handling)
add_net_test_case(bad_request_error_handling)
add_net_test_case(make_meta_request_error_handling)

if(AWS_ENABLE_S3_ENDPOINT_RESOLVER)
    add_test_case(test_s3_endpoint_resolver_resolve_endpoint)
    add_test_case(test_s3_endpoint_resolver_resolve_endpoint_fips)
    add_test_case(test_s3_endpoint_resolver_resolve_endpoint_force_path_style)
endif()

add_test_case(parallel_read_stream_from_file_sanity_test)
add_test_case(parallel_read_stream_from_large_file_test)

add_test_case(test_s3_buffer_pool_threaded_allocs_and_frees)
add_test_case(test_s3_buffer_pool_large_chunk_threaded_allocs_and_frees)
add_test_case(test_s3_buffer_pool_limits)
add_test_case(test_s3_buffer_pool_trim)
add_test_case(test_s3_buffer_pool_reservation_hold)
add_test_case(test_s3_buffer_pool_too_small)
add_net_test_case(test_s3_put_object_buffer_pool_trim)

add_net_test_case(client_update_upload_part_timeout)
add_net_test_case(client_meta_request_override_part_size)
add_net_test_case(client_meta_request_override_multipart_upload_threshold)

set(TEST_BINARY_NAME ${PROJECT_NAME}-tests)
generate_test_driver(${TEST_BINARY_NAME})

if(AWS_ENABLE_S3_ENDPOINT_RESOLVER)
    target_compile_definitions(${PROJECT_NAME}-tests PRIVATE "-DAWS_ENABLE_S3_ENDPOINT_RESOLVER")
endif()