From 4595516b9474322d75d06f39918ac8935c742982 Mon Sep 17 00:00:00 2001 From: Sean Huh Date: Tue, 11 Aug 2026 16:00:57 -0700 Subject: [PATCH] Add agent_tool_execution_governance aggregate policy to conformance test PiperOrigin-RevId: 963051344 --- .../policy/PolicyConformanceTest.java | 40 ++++++++++++------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/conformance/src/test/java/dev/cel/conformance/policy/PolicyConformanceTest.java b/conformance/src/test/java/dev/cel/conformance/policy/PolicyConformanceTest.java index d7851bb72..7c25c3a19 100644 --- a/conformance/src/test/java/dev/cel/conformance/policy/PolicyConformanceTest.java +++ b/conformance/src/test/java/dev/cel/conformance/policy/PolicyConformanceTest.java @@ -32,6 +32,7 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.util.Locale; +import java.util.Map; import org.junit.runners.model.Statement; /** Statement representing a single CEL policy conformance test case. */ @@ -40,21 +41,30 @@ public final class PolicyConformanceTest extends Statement { private static final Cel CEL = CelFactory.standardCelBuilder() .addFunctionBindings( - CelFunctionBinding.fromOverloads( - "locationCode", - CelFunctionBinding.from( - "locationCode_string", - String.class, - (ip) -> { - switch (ip) { - case "10.0.0.1": - return "us"; - case "10.0.0.2": - return "de"; - default: - return "ir"; - } - }))) + CelFunctionBinding.from( + "locationCode_string", + String.class, + (ip) -> { + switch (ip) { + case "10.0.0.1": + return "us"; + case "10.0.0.2": + return "de"; + default: + return "ir"; + } + }), + CelFunctionBinding.from( + "classifier_has_credit_card", + Object.class, + (arg) -> arg instanceof Map && ((Map) arg).containsKey("cc")), + CelFunctionBinding.from( + "classifier_has_email_or_phone", + Object.class, + (arg) -> + arg instanceof Map + && (((Map) arg).containsKey("email") + || ((Map) arg).containsKey("phone")))) .build(); private final String name;