MCPcopy Create free account
hub / github.com/cel-expr/cel-cpp / ParseTestCase

Function ParseTestCase

eval/compiler/cel_expression_builder_flat_impl_test.cc:149–167  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

147};
148
149absl::StatusOr<ParsedExpr> ParseTestCase(const RecursiveTestCase& test_case) {
150 static const std::vector<Macro>* kMacros = []() {
151 auto* result = new std::vector<Macro>(Macro::AllMacros());
152 absl::c_copy(cel::extensions::bindings_macros(),
153 std::back_inserter(*result));
154 return result;
155 }();
156
157 if (!test_case.expr.empty()) {
158 return ParseWithMacros(test_case.expr, *kMacros, "<input>");
159 } else if (!test_case.pb_expr.empty()) {
160 ParsedExpr result;
161 if (!google::protobuf::TextFormat::ParseFromString(test_case.pb_expr, &result)) {
162 return absl::InvalidArgumentError("Failed to parse proto");
163 }
164 return result;
165 }
166 return absl::InvalidArgumentError("No expression provided");
167}
168
169TEST_P(RecursivePlanTest, ParsedExprRecursiveImpl) {
170 const RecursiveTestCase& test_case = GetParam();

Callers

nothing calls this directly

Calls 4

AllMacrosFunction · 0.85
bindings_macrosFunction · 0.85
ParseWithMacrosFunction · 0.85
emptyMethod · 0.45

Tested by

no test coverage detected