11load ("@rules_java//java:defs.bzl" , "java_library" )
22load ("//:cel_android_rules.bzl" , "cel_android_local_test" )
33load ("//:testing.bzl" , "junit4_test_suites" )
4- load ("//compiler/tools:compile_cel.bzl" , "compile_cel" )
54
65package (
76 default_applicable_licenses = ["//:license" ],
87 default_testonly = True ,
98)
109
11- compile_cel (
12- name = "compiled_hello_world" ,
13- expression = "'hello world'" ,
14- )
15-
16- compile_cel (
17- name = "compiled_one_plus_two" ,
18- expression = "1 + 2" ,
19- )
20-
21- compile_cel (
22- name = "compiled_list_literal" ,
23- expression = "['a', 1, 2u, 3.5]" ,
24- )
25-
26- compile_cel (
27- name = "compiled_comprehension_exists" ,
28- expression = "[1,2,3].exists(x, x == 3)" ,
29- )
30-
31- compile_cel (
32- name = "compiled_primitive_variables" ,
33- environment = "//testing/environment:primitive_variables" ,
34- expression = "bool_var && bytes_var == b'abc' && double_var == 1.0 && int_var == 42 && uint_var == 42u && str_var == 'foo'" ,
35- )
36-
37- compile_cel (
38- name = "compiled_custom_functions" ,
39- environment = "//testing/environment:custom_functions" ,
40- expression = "''.isEmpty() && [].isEmpty()" ,
41- )
42-
43- compile_cel (
44- name = "compiled_proto2_select_primitives_all_ored" ,
45- environment = "//testing/environment:proto2_message_variables" ,
46- expression = "proto2.single_int32 == 1 || proto2.single_int64 == 2 || proto2.single_uint32 == 3u || proto2.single_uint64 == 4u ||" +
47- "proto2.single_sint32 == 5 || proto2.single_sint64 == 6 || proto2.single_fixed32 == 7u || proto2.single_fixed64 == 8u ||" +
48- "proto2.single_sfixed32 == 9 || proto2.single_sfixed64 == 10 || proto2.single_float == 1.5 || proto2.single_double == 2.5 ||" +
49- "proto2.single_bool || proto2.single_string == 'hello world' || proto2.single_bytes == b\' abc\' " ,
50- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto2:test_all_types_proto" ],
51- )
52-
53- compile_cel (
54- name = "compiled_proto2_select_primitives" ,
55- environment = "//testing/environment:proto2_message_variables" ,
56- expression = "proto2.single_int32 == 1 && proto2.single_int64 == 2 && proto2.single_uint32 == 3u && proto2.single_uint64 == 4u &&" +
57- "proto2.single_sint32 == 5 && proto2.single_sint64 == 6 && proto2.single_fixed32 == 7u && proto2.single_fixed64 == 8u &&" +
58- "proto2.single_sfixed32 == 9 && proto2.single_sfixed64 == 10 && proto2.single_float == 1.5 && proto2.single_double == 2.5 &&" +
59- "proto2.single_bool && proto2.single_string == 'hello world' && proto2.single_bytes == b\' abc\' " ,
60- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto2:test_all_types_proto" ],
61- )
62-
63- compile_cel (
64- name = "compiled_proto2_select_wrappers" ,
65- environment = "//testing/environment:proto2_message_variables" ,
66- expression = "proto2.single_int32_wrapper == 1 && proto2.single_int64_wrapper == 2 && proto2.single_float_wrapper == 1.5 &&" +
67- "proto2.single_double_wrapper == 2.5 && proto2.single_uint32_wrapper == 3u && proto2.single_uint64_wrapper == 4u &&" +
68- "proto2.single_string_wrapper == 'hello world' && proto2.single_bool_wrapper && proto2.single_bytes_wrapper == b\' abc\' " ,
69- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto2:test_all_types_proto" ],
70- )
71-
72- compile_cel (
73- name = "compiled_proto3_select_primitives_all_ored" ,
74- environment = "//testing/environment:proto3_message_variables" ,
75- expression = "proto3.single_int32 == 1 || proto3.single_int64 == 2 || proto3.single_uint32 == 3u || proto3.single_uint64 == 4u ||" +
76- "proto3.single_sint32 == 5 || proto3.single_sint64 == 6 || proto3.single_fixed32 == 7u || proto3.single_fixed64 == 8u ||" +
77- "proto3.single_sfixed32 == 9 || proto3.single_sfixed64 == 10 || proto3.single_float == 1.5 || proto3.single_double == 2.5 ||" +
78- "proto3.single_bool || proto3.single_string == 'hello world' || proto3.single_bytes == b\' abc\' " ,
79- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto3:test_all_types_proto" ],
80- )
81-
82- compile_cel (
83- name = "compiled_proto3_select_primitives" ,
84- environment = "//testing/environment:proto3_message_variables" ,
85- expression = "proto3.single_int32 == 1 && proto3.single_int64 == 2 && proto3.single_uint32 == 3u && proto3.single_uint64 == 4u &&" +
86- "proto3.single_sint32 == 5 && proto3.single_sint64 == 6 && proto3.single_fixed32 == 7u && proto3.single_fixed64 == 8u &&" +
87- "proto3.single_sfixed32 == 9 && proto3.single_sfixed64 == 10 && proto3.single_float == 1.5 && proto3.single_double == 2.5 &&" +
88- "proto3.single_bool && proto3.single_string == 'hello world' && proto3.single_bytes == b\' abc\' " ,
89- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto3:test_all_types_proto" ],
90- )
91-
92- compile_cel (
93- name = "compiled_proto3_select_wrappers" ,
94- environment = "//testing/environment:proto3_message_variables" ,
95- expression = "proto3.single_int32_wrapper == 1 && proto3.single_int64_wrapper == 2 && proto3.single_float_wrapper == 1.5 &&" +
96- "proto3.single_double_wrapper == 2.5 && proto3.single_uint32_wrapper == 3u && proto3.single_uint64_wrapper == 4u &&" +
97- "proto3.single_string_wrapper == 'hello world' && proto3.single_bool_wrapper && proto3.single_bytes_wrapper == b\' abc\' " ,
98- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto3:test_all_types_proto" ],
99- )
100-
101- compile_cel (
102- name = "compiled_proto2_deep_traversal" ,
103- environment = "//testing/environment:proto2_message_variables" ,
104- expression = "proto2.oneof_type.payload.repeated_string" ,
105- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto2:test_all_types_proto" ],
106- )
107-
108- compile_cel (
109- name = "compiled_proto3_deep_traversal" ,
110- environment = "//testing/environment:proto3_message_variables" ,
111- expression = "proto3.oneof_type.payload.repeated_string" ,
112- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto3:test_all_types_proto" ],
113- )
114-
115- compile_cel (
116- name = "compiled_proto2_select_repeated_fields" ,
117- environment = "//testing/environment:proto2_message_variables" ,
118- expression = "[proto2.repeated_int32, proto2.repeated_int64, proto2.repeated_uint32, proto2.repeated_uint64, proto2.repeated_sint32, proto2.repeated_sint64, " +
119- "proto2.repeated_fixed32, proto2.repeated_fixed64, proto2.repeated_sfixed32, proto2.repeated_sfixed64, proto2.repeated_float, proto2.repeated_double, " +
120- "proto2.repeated_bool, proto2.repeated_string, proto2.repeated_bytes]" ,
121- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto2:test_all_types_proto" ],
122- )
123-
124- compile_cel (
125- name = "compiled_proto3_select_repeated_fields" ,
126- environment = "//testing/environment:proto3_message_variables" ,
127- expression = "[proto3.repeated_int32, proto3.repeated_int64, proto3.repeated_uint32, proto3.repeated_uint64, proto3.repeated_sint32, proto3.repeated_sint64, " +
128- "proto3.repeated_fixed32, proto3.repeated_fixed64, proto3.repeated_sfixed32, proto3.repeated_sfixed64, proto3.repeated_float, proto3.repeated_double, " +
129- "proto3.repeated_bool, proto3.repeated_string, proto3.repeated_bytes]" ,
130- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto3:test_all_types_proto" ],
131- )
132-
133- compile_cel (
134- name = "compiled_proto2_select_map_fields" ,
135- environment = "//testing/environment:proto2_message_variables" ,
136- expression = "[proto2.map_bool_bool, proto2.map_bool_string, proto2.map_bool_bytes, proto2.map_bool_int32, proto2.map_bool_int64, " +
137- "proto2.map_bool_uint32, proto2.map_bool_uint64, proto2.map_bool_float, proto2.map_bool_double, proto2.map_bool_enum, " +
138- "proto2.map_bool_duration, proto2.map_bool_timestamp]" ,
139- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto2:test_all_types_proto" ],
140- )
141-
142- compile_cel (
143- name = "compiled_proto3_select_map_fields" ,
144- environment = "//testing/environment:proto3_message_variables" ,
145- expression = "[proto3.map_bool_bool, proto3.map_bool_string, proto3.map_bool_bytes, proto3.map_bool_int32, proto3.map_bool_int64, " +
146- "proto3.map_bool_uint32, proto3.map_bool_uint64, proto3.map_bool_float, proto3.map_bool_double, proto3.map_bool_enum, " +
147- "proto3.map_bool_duration, proto3.map_bool_timestamp]" ,
148- proto_srcs = ["@cel_spec//proto/cel/expr/conformance/proto3:test_all_types_proto" ],
149- )
150-
151- filegroup (
152- name = "compiled_exprs" ,
153- # keep sorted
154- srcs = [
155- ":compiled_comprehension_exists" ,
156- ":compiled_custom_functions" ,
157- ":compiled_hello_world" ,
158- ":compiled_list_literal" ,
159- ":compiled_one_plus_two" ,
160- ":compiled_primitive_variables" ,
161- ":compiled_proto2_deep_traversal" ,
162- ":compiled_proto2_select_map_fields" ,
163- ":compiled_proto2_select_primitives" ,
164- ":compiled_proto2_select_primitives_all_ored" ,
165- ":compiled_proto2_select_repeated_fields" ,
166- ":compiled_proto2_select_wrappers" ,
167- ":compiled_proto3_deep_traversal" ,
168- ":compiled_proto3_select_map_fields" ,
169- ":compiled_proto3_select_primitives" ,
170- ":compiled_proto3_select_primitives_all_ored" ,
171- ":compiled_proto3_select_repeated_fields" ,
172- ":compiled_proto3_select_wrappers" ,
173- ],
174- )
175-
17610ANDROID_TESTS = [
17711 "CelLiteRuntimeAndroidTest.java" ,
17812]
@@ -189,7 +23,6 @@ java_library(
18923 "InterpreterTest.java" ,
19024 ] + ANDROID_TESTS ,
19125 ),
192- resources = [":compiled_exprs" ],
19326 deps = [
19427 "//:auto_value" ,
19528 "//:java_truth" ,
@@ -296,13 +129,11 @@ java_library(
296129cel_android_local_test (
297130 name = "android_tests" ,
298131 srcs = ANDROID_TESTS ,
299- resources = [":compiled_exprs" ],
300132 test_class = "dev.cel.runtime.CelLiteRuntimeAndroidTest" ,
301133 deps = [
302134 "//:java_truth" ,
303135 "//common:cel_ast_android" ,
304136 "//common:options" ,
305- "//common:proto_ast_android" ,
306137 "//common/internal:proto_time_utils_android" ,
307138 "//common/values:cel_value_provider_android" ,
308139 "//common/values:proto_message_lite_value_provider_android" ,
@@ -320,6 +151,7 @@ cel_android_local_test(
320151 "//runtime/standard:int_android" ,
321152 "//testing/protos:test_all_types_cel_java_proto2_lite" ,
322153 "//testing/protos:test_all_types_cel_java_proto3_lite" ,
154+ "//testing/src/main/java/dev/cel/testing/compiled:compiled_expr_utils_android" ,
323155 "@cel_spec//proto/cel/expr:checked_java_proto_lite" ,
324156 "@cel_spec//proto/cel/expr/conformance/proto2:test_all_types_java_proto_lite" ,
325157 "@cel_spec//proto/cel/expr/conformance/proto3:test_all_types_java_proto_lite" ,
0 commit comments