66
77#include " absl/log/absl_check.h"
88#include " absl/status/status.h"
9+ #include " absl/status/status_matchers.h"
910#include " absl/strings/str_cat.h"
1011#include " absl/strings/string_view.h"
1112#include " eval/compiler/cel_expression_builder_flat_impl.h"
@@ -26,6 +27,7 @@ namespace google::api::expr::runtime {
2627
2728namespace {
2829
30+ using ::absl_testing::IsOk;
2931using ::cel::runtime_internal::NewTestingRuntimeEnv;
3032using ::cel::expr::Expr;
3133using ::google::api::expr::parser::Parse;
@@ -187,7 +189,9 @@ TEST_P(ShortCircuitingTest, UnknownAnd) {
187189 auto builder = GetBuilder (/* enable_unknowns=*/ true );
188190 absl::Status error = absl::InternalError (" error" );
189191
190- activation.set_unknown_attribute_patterns ({CelAttributePattern (" var1" , {})});
192+ ASSERT_THAT (
193+ activation.SetUnknownAttributePatterns ({CelAttributePattern (" var1" , {})}),
194+ IsOk ());
191195 activation.InsertValue (" var2" , CelValue::CreateError (&error));
192196 activation.InsertValue (" var3" , CelValue::CreateBool (false ));
193197
@@ -217,7 +221,9 @@ TEST_P(ShortCircuitingTest, UnknownOr) {
217221 auto builder = GetBuilder (/* enable_unknowns=*/ true );
218222 absl::Status error = absl::InternalError (" error" );
219223
220- activation.set_unknown_attribute_patterns ({CelAttributePattern (" var1" , {})});
224+ ASSERT_THAT (
225+ activation.SetUnknownAttributePatterns ({CelAttributePattern (" var1" , {})}),
226+ IsOk ());
221227 activation.InsertValue (" var2" , CelValue::CreateError (&error));
222228 activation.InsertValue (" var3" , CelValue::CreateBool (true ));
223229
@@ -307,7 +313,9 @@ TEST_P(ShortCircuitingTest, TernaryUnknownCondHandling) {
307313 activation.InsertValue (" arg1" , CelValue::CreateError (&error));
308314 activation.InsertValue (" arg2" , CelValue::CreateInt64 (-1 ));
309315
310- activation.set_unknown_attribute_patterns ({CelAttributePattern (" cond" , {})});
316+ ASSERT_THAT (
317+ activation.SetUnknownAttributePatterns ({CelAttributePattern (" cond" , {})}),
318+ IsOk ());
311319
312320 CelValue result;
313321 ASSERT_NO_FATAL_FAILURE (
@@ -319,9 +327,11 @@ TEST_P(ShortCircuitingTest, TernaryUnknownCondHandling) {
319327 EXPECT_THAT (attrs.begin ()->variable_name (), Eq (" cond" ));
320328
321329 // Unknown branches are discarded if condition is unknown
322- activation.set_unknown_attribute_patterns ({CelAttributePattern (" cond" , {}),
323- CelAttributePattern (" arg1" , {}),
324- CelAttributePattern (" arg2" , {})});
330+ ASSERT_THAT (
331+ activation.SetUnknownAttributePatterns ({CelAttributePattern (" cond" , {}),
332+ CelAttributePattern (" arg1" , {}),
333+ CelAttributePattern (" arg2" , {})}),
334+ IsOk ());
325335
326336 ASSERT_NO_FATAL_FAILURE (
327337 BuildAndEval (builder.get (), expr, activation, &arena, &result));
@@ -344,7 +354,9 @@ TEST_P(ShortCircuitingTest, TernaryUnknownArgsHandling) {
344354 activation.InsertValue (" arg2" , CelValue::CreateInt64 (-1 ));
345355
346356 // Unknown arg is discarded if condition chooses other branch.
347- activation.set_unknown_attribute_patterns ({CelAttributePattern (" arg1" , {})});
357+ ASSERT_THAT (
358+ activation.SetUnknownAttributePatterns ({CelAttributePattern (" arg1" , {})}),
359+ IsOk ());
348360
349361 CelValue result;
350362
@@ -354,8 +366,10 @@ TEST_P(ShortCircuitingTest, TernaryUnknownArgsHandling) {
354366 EXPECT_EQ (result.Int64OrDie (), -1 );
355367
356368 // Branches won't merge if both are unknown.
357- activation.set_unknown_attribute_patterns (
358- {CelAttributePattern (" arg1" , {}), CelAttributePattern (" arg2" , {})});
369+ ASSERT_THAT (
370+ activation.SetUnknownAttributePatterns (
371+ {CelAttributePattern (" arg1" , {}), CelAttributePattern (" arg2" , {})}),
372+ IsOk ());
359373
360374 ASSERT_NO_FATAL_FAILURE (
361375 BuildAndEval (builder.get (), expr, activation, &arena, &result));
@@ -378,8 +392,10 @@ TEST_P(ShortCircuitingTest, TernaryUnknownAndErrorHandling) {
378392 activation.InsertValue (" arg2" , CelValue::CreateInt64 (-1 ));
379393
380394 // Error cond discards args
381- activation.set_unknown_attribute_patterns (
382- {CelAttributePattern (" arg1" , {}), CelAttributePattern (" arg2" , {})});
395+ ASSERT_THAT (
396+ activation.SetUnknownAttributePatterns (
397+ {CelAttributePattern (" arg1" , {}), CelAttributePattern (" arg2" , {})}),
398+ IsOk ());
383399
384400 CelValue result;
385401
@@ -389,7 +405,9 @@ TEST_P(ShortCircuitingTest, TernaryUnknownAndErrorHandling) {
389405 EXPECT_EQ (*result.ErrorOrDie (), error);
390406
391407 // Error arg discarded if condition unknown
392- activation.set_unknown_attribute_patterns ({CelAttributePattern (" cond" , {})});
408+ ASSERT_THAT (
409+ activation.SetUnknownAttributePatterns ({CelAttributePattern (" cond" , {})}),
410+ IsOk ());
393411 ASSERT_TRUE (activation.RemoveValueEntry (" arg1" ));
394412 activation.InsertValue (" arg1" , CelValue::CreateError (&error));
395413
0 commit comments