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

Function TEST

checker/optional_test.cc:76–101  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

74}
75
76TEST(OptionalTest, OptSelectDoesNotAnnotateFieldType) {
77 ASSERT_OK_AND_ASSIGN(
78 std::unique_ptr<TypeCheckerBuilder> builder,
79 CreateTypeCheckerBuilder(GetSharedTestingDescriptorPool()));
80 ASSERT_THAT(builder->AddLibrary(StandardCheckerLibrary()), IsOk());
81 ASSERT_THAT(builder->AddLibrary(OptionalCheckerLibrary()), IsOk());
82 builder->set_container("cel.expr.conformance.proto3");
83 ASSERT_OK_AND_ASSIGN(std::unique_ptr<TypeChecker> checker,
84 std::move(*builder).Build());
85
86 ASSERT_OK_AND_ASSIGN(auto ast,
87 MakeTestParsedAst("TestAllTypes{}.?single_int64"));
88
89 ASSERT_OK_AND_ASSIGN(auto result, checker->Check(std::move(ast)));
90
91 EXPECT_THAT(result.GetIssues(), IsEmpty());
92 ASSERT_OK_AND_ASSIGN(auto checked_ast, result.ReleaseAst());
93
94 ASSERT_THAT(checked_ast->root_expr().call_expr().args(), SizeIs(2));
95 int64_t field_id = checked_ast->root_expr().call_expr().args()[1].id();
96 EXPECT_NE(field_id, 0);
97
98 EXPECT_THAT(checked_ast->type_map(), Not(Contains(Key(field_id))));
99 EXPECT_THAT(checked_ast->GetTypeOrDyn(checked_ast->root_expr().id()),
100 IsOptionalType(TypeSpec(PrimitiveType::kInt64)));
101}
102
103struct TestCase {
104 std::string expr;

Callers

nothing calls this directly

Calls 11

CreateTypeCheckerBuilderFunction · 0.85
StandardCheckerLibraryFunction · 0.85
OptionalCheckerLibraryFunction · 0.85
TypeSpecClass · 0.85
GetIssuesMethod · 0.80
argsMethod · 0.80
ASSERT_OK_AND_ASSIGNFunction · 0.50
AddLibraryMethod · 0.45
set_containerMethod · 0.45
BuildMethod · 0.45
idMethod · 0.45

Tested by

no test coverage detected