1package {
2    default_team: "trendy_team_android_kernel",
3    default_applicable_licenses: ["Android-Apache-2.0"],
4}
5
6java_test_host {
7    name: "xsdc-java-tests",
8    srcs: [
9        "src/**/*.java",
10        ":xsdc_attr_group_simple_tests",
11        ":xsdc_attr_enumtype_tests",
12        ":xsdc_group_tests",
13        ":xsdc_nested_type_tests",
14        ":xsdc_predefined_types_tests",
15        ":xsdc_purchase_simple_tests",
16        ":xsdc_reference_tests",
17        ":xsdc_simple_complex_content_tests",
18        ":xsdc_simple_type_tests",
19    ],
20    test_options: {
21        unit_test: true,
22    },
23    static_libs: [
24        "junit",
25        "xsdc",
26        "stub-annotations",
27        "kxml2-2.3.0",
28    ],
29    java_resource_dirs: ["resources"],
30    test_suites: ["general-tests"],
31}
32
33cc_test_host {
34    name: "xsdc-cpp-tests",
35    srcs: [
36        "simple_type.cpp",
37        "tests.cpp",
38        "test_group.cpp",
39        "main.cpp",
40    ],
41    test_options: {
42        unit_test: true,
43    },
44    generated_sources: [
45        "xsdc_attr_group_simple_tests",
46        "xsdc_attr_enumtype_tests",
47        "xsdc_group_tests",
48        "xsdc_nested_type_tests",
49        "xsdc_predefined_types_tests",
50        "xsdc_purchase_simple_tests",
51        "xsdc_reference_tests",
52        "xsdc_simple_complex_content_tests",
53        "xsdc_simple_type_tests",
54    ],
55    generated_headers: [
56        "xsdc_attr_group_simple_tests",
57        "xsdc_attr_enumtype_tests",
58        "xsdc_group_tests",
59        "xsdc_nested_type_tests",
60        "xsdc_predefined_types_tests",
61        "xsdc_purchase_simple_tests",
62        "xsdc_reference_tests",
63        "xsdc_simple_complex_content_tests",
64        "xsdc_simple_type_tests",
65    ],
66    header_libs: ["libxsdc-utils"],
67    shared_libs: [
68        "libbase",
69        "libxml2",
70    ],
71    data: ["resources/*.xml"],
72    test_suites: ["general-tests"],
73}
74
75// These tests verify generated sources with libtinyxml2.
76cc_test_host {
77    name: "xsdc-tinyxml-cpp-tests",
78    srcs: [
79        "simple_type.cpp",
80        "tests.cpp",
81        "main.cpp",
82        // Since tinyxml2 doesn't support XInclude, skip the
83        // group test
84        // "test_group.cpp",
85    ],
86    test_options: {
87        unit_test: true,
88    },
89    generated_sources: [
90        "xsdc_attr_group_simple_tinyxml_tests",
91        "xsdc_attr_enumtype_tinyxml_tests",
92        "xsdc_group_tinyxml_tests",
93        "xsdc_nested_type_tinyxml_tests",
94        "xsdc_predefined_types_tinyxml_tests",
95        "xsdc_purchase_simple_tinyxml_tests",
96        "xsdc_reference_tinyxml_tests",
97        "xsdc_simple_complex_content_tinyxml_tests",
98        "xsdc_simple_type_tinyxml_tests",
99    ],
100    generated_headers: [
101        "xsdc_attr_group_simple_tinyxml_tests",
102        "xsdc_attr_enumtype_tinyxml_tests",
103        "xsdc_group_tinyxml_tests",
104        "xsdc_nested_type_tinyxml_tests",
105        "xsdc_predefined_types_tinyxml_tests",
106        "xsdc_purchase_simple_tinyxml_tests",
107        "xsdc_reference_tinyxml_tests",
108        "xsdc_simple_complex_content_tinyxml_tests",
109        "xsdc_simple_type_tinyxml_tests",
110    ],
111    header_libs: ["libxsdc-utils"],
112    shared_libs: [
113        "libbase",
114        "libtinyxml2",
115    ],
116    data: ["resources/*.xml"],
117    test_suites: ["general-tests"],
118}
119
120// These tests verify that enums-only and parser-only
121// modules can be combined later.
122cc_test_host {
123    name: "xsdc-cpp-tests-split",
124    srcs: [
125        "simple_type.cpp",
126        "main.cpp",
127    ],
128    test_options: {
129        unit_test: true,
130    },
131    generated_sources: [
132        "xsdc_simple_type_tests_enums",
133        "xsdc_simple_type_tests_parser",
134    ],
135    generated_headers: [
136        "xsdc_simple_type_tests_enums",
137        "xsdc_simple_type_tests_parser",
138    ],
139    header_libs: ["libxsdc-utils"],
140    shared_libs: [
141        "libbase",
142        "libxml2",
143    ],
144    data: ["resources/*.xml"],
145    test_suites: ["general-tests"],
146}
147
148// These tests verify that enums-only and parser-only
149// modules can be combined later. The tests use libtinyxml2
150// in the generated sources.
151cc_test_host {
152    name: "xsdc-tinyxml-cpp-tests-split",
153    srcs: [
154        "simple_type.cpp",
155        "main.cpp",
156    ],
157    test_options: {
158        unit_test: true,
159    },
160    generated_sources: [
161        "xsdc_simple_type_tinyxml_tests_enums",
162        "xsdc_simple_type_tinyxml_tests_parser",
163    ],
164    generated_headers: [
165        "xsdc_simple_type_tinyxml_tests_enums",
166        "xsdc_simple_type_tinyxml_tests_parser",
167    ],
168    header_libs: ["libxsdc-utils"],
169    shared_libs: [
170        "libbase",
171        "libtinyxml2",
172    ],
173    data: ["resources/*.xml"],
174    test_suites: ["general-tests"],
175}
176
177// These tests verify that enums-only module can be used on
178// its own and it does not depend on libxml2.
179cc_test_host {
180    name: "xsdc-cpp-tests-enums",
181    srcs: [
182        "simple_type_enumsonly.cpp",
183        "main.cpp",
184    ],
185    test_options: {
186        unit_test: true,
187    },
188    generated_sources: [
189        "xsdc_simple_type_tests_enums",
190    ],
191    generated_headers: [
192        "xsdc_simple_type_tests_enums",
193    ],
194    header_libs: ["libxsdc-utils"],
195    shared_libs: [
196        "libbase",
197    ],
198    data: ["resources/*.xml"],
199    test_suites: ["general-tests"],
200}
201
202// These tests verify that enums-only module can be used on
203// its own and it does not depend on libtinyxml2.
204cc_test_host {
205    name: "xsdc-tinyxml-cpp-tests-enums",
206    srcs: [
207        "simple_type_enumsonly.cpp",
208        "main.cpp",
209    ],
210    test_options: {
211        unit_test: true,
212    },
213    generated_sources: [
214        "xsdc_simple_type_tinyxml_tests_enums",
215    ],
216    generated_headers: [
217        "xsdc_simple_type_tinyxml_tests_enums",
218    ],
219    header_libs: ["libxsdc-utils"],
220    shared_libs: [
221        "libbase",
222    ],
223    data: ["resources/*.xml"],
224    test_suites: ["general-tests"],
225}
226
227// These tests verify that documents generated with the
228// libxml2 variant can be parsed by the tinyxml variant and
229// vice-versa.
230cc_test_host {
231    name: "xsdc-cross-generate-parse-cpp-tests",
232    srcs: [
233        "cross_generate_parse.cpp",
234        "main.cpp",
235    ],
236    test_options: {
237        unit_test: true,
238    },
239    generated_sources: [
240        "xsdc_cross_generate_parse_libxml_tests",
241        "xsdc_cross_generate_parse_tinyxml_tests",
242    ],
243    generated_headers: [
244        "xsdc_cross_generate_parse_libxml_tests",
245        "xsdc_cross_generate_parse_tinyxml_tests",
246    ],
247    header_libs: ["libxsdc-utils"],
248    shared_libs: [
249        "libbase",
250        "libtinyxml2",
251        "libxml2",
252    ],
253    test_suites: ["general-tests"],
254}
255