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

Function ExpectResult

eval/public/container_function_registrar_test.cc:49–71  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

47}
48
49void ExpectResult(const TestCase& test_case) {
50 auto parsed_expr = parser::Parse(test_case.expr);
51 ASSERT_OK(parsed_expr);
52 const Expr& expr_ast = parsed_expr->expr();
53 const SourceInfo& source_info = parsed_expr->source_info();
54 InterpreterOptions options;
55 options.enable_timestamp_duration_overflow_errors = true;
56 options.enable_comprehension_list_append = true;
57 std::unique_ptr<CelExpressionBuilder> builder =
58 CreateCelExpressionBuilder(options);
59 ASSERT_OK(RegisterContainerFunctions(builder->GetRegistry(), options));
60 // Needed to avoid error - No overloads provided for FunctionStep creation.
61 ASSERT_OK(RegisterEqualityFunctions(builder->GetRegistry(), options));
62 ASSERT_OK_AND_ASSIGN(auto cel_expression,
63 builder->CreateExpression(&expr_ast, &source_info));
64
65 Activation activation;
66
67 google::protobuf::Arena arena;
68 ASSERT_OK_AND_ASSIGN(auto value,
69 cel_expression->Evaluate(activation, &arena));
70 EXPECT_THAT(value, test::EqualsCelValue(*test_case.result));
71}
72
73using ContainerFunctionParamsTest = testing::TestWithParam<TestCase>;
74TEST_P(ContainerFunctionParamsTest, StandardFunctions) {

Callers 1

TEST_PFunction · 0.70

Calls 8

EqualsCelValueFunction · 0.85
source_infoMethod · 0.80
GetRegistryMethod · 0.80
ParseFunction · 0.50
exprMethod · 0.45

Tested by

no test coverage detected