@@ -28,53 +28,76 @@ configure_file(
2828)
2929
3030iceberg_tests = {
31- ' schema_test' : files (
32- ' name_mapping_test.cc' ,
33- ' partition_field_test.cc' ,
34- ' partition_spec_test.cc' ,
35- ' schema_field_test.cc' ,
36- ' schema_test.cc' ,
37- ' schema_util_test.cc' ,
38- ' snapshot_test.cc' ,
39- ' sort_field_test.cc' ,
40- ' sort_order_test.cc' ,
41- ' transform_test.cc' ,
42- ' type_test.cc' ,
43- ),
44- ' table_test' : files (
45- ' json_internal_test.cc' ,
46- ' schema_json_test.cc' ,
47- ' table_test.cc' ,
48- ' test_common.cc' ,
49- ),
50- ' expression_test' : files (
51- ' expression_test.cc' ,
52- ' literal_test.cc' ,
53- ' predicate_test.cc' ,
54- ),
55- ' json_serde_test' : files (
56- ' json_internal_test.cc' ,
57- ' metadata_serde_test.cc' ,
58- ' schema_json_test.cc' ,
59- ' test_common.cc' ,
60- ),
61- ' util_test' : files (
62- ' config_test.cc' ,
63- ' decimal_test.cc' ,
64- ' endian_test.cc' ,
65- ' formatter_test.cc' ,
66- ' string_util_test.cc' ,
67- ' uuid_test.cc' ,
68- ' visit_type_test.cc' ,
69- ),
70- ' roaring_test' : files (' roaring_test.cc' ),
31+ ' schema_test' : {
32+ ' sources' : files (
33+ ' name_mapping_test.cc' ,
34+ ' partition_field_test.cc' ,
35+ ' partition_spec_test.cc' ,
36+ ' schema_field_test.cc' ,
37+ ' schema_test.cc' ,
38+ ' schema_util_test.cc' ,
39+ ' snapshot_test.cc' ,
40+ ' sort_field_test.cc' ,
41+ ' sort_order_test.cc' ,
42+ ' transform_test.cc' ,
43+ ' type_test.cc' ,
44+ ),
45+ },
46+ ' table_test' : {
47+ ' sources' : files (
48+ ' json_internal_test.cc' ,
49+ ' schema_json_test.cc' ,
50+ ' table_test.cc' ,
51+ ' test_common.cc' ,
52+ ),
53+ },
54+ ' expression_test' : {
55+ ' sources' : files (
56+ ' expression_test.cc' ,
57+ ' literal_test.cc' ,
58+ ' predicate_test.cc' ,
59+ ),
60+ },
61+ ' json_serde_test' : {
62+ ' sources' : files (
63+ ' json_internal_test.cc' ,
64+ ' metadata_serde_test.cc' ,
65+ ' schema_json_test.cc' ,
66+ ' test_common.cc' ,
67+ ),
68+ },
69+ ' util_test' : {
70+ ' sources' : files (
71+ ' config_test.cc' ,
72+ ' decimal_test.cc' ,
73+ ' endian_test.cc' ,
74+ ' formatter_test.cc' ,
75+ ' string_util_test.cc' ,
76+ ' uuid_test.cc' ,
77+ ' visit_type_test.cc' ,
78+ ),
79+ },
80+ ' roaring_test' : {' sources' : files (' roaring_test.cc' )},
7181}
7282
73- foreach test_name, sources : iceberg_tests
83+ if get_option (' rest' ).enabled()
84+ cpp_httplib_dep = dependency (' cpp-httplib' )
85+ iceberg_tests += {
86+ ' rest_catalog_test' : {
87+ ' sources' : files (' rest_catalog_test.cc' ),
88+ ' dependencies' : [iceberg_rest_dep, cpp_httplib_dep],
89+ },
90+ }
91+ endif
92+
93+ foreach test_name, values : iceberg_tests
7494 exc = executable (
7595 test_name,
76- sources : sources,
77- dependencies : [iceberg_dep, gmock_main_dep],
96+ sources : values[' sources' ],
97+ dependencies : [iceberg_dep, gmock_main_dep] + values.get(
98+ ' dependencies' ,
99+ [],
100+ ),
78101 )
79102 test (test_name, exc)
80103endforeach
0 commit comments