Search in sources :

Example 6 with Err

use of org.projectnessie.cel.common.types.Err in project cel-java by projectnessie.

the class JacksonTypeDescriptionTest method unknownProperties.

@Test
void unknownProperties() {
    CollectionsObject collectionsObject = new CollectionsObject();
    JacksonRegistry reg = (JacksonRegistry) newRegistry();
    reg.register(CollectionsObject.class);
    Val collectionsVal = reg.nativeToValue(collectionsObject);
    assertThat(collectionsVal).isInstanceOf(ObjectT.class);
    ObjectT obj = (ObjectT) collectionsVal;
    Val x = obj.isSet(stringOf("bart"));
    assertThat(x).isInstanceOf(Err.class).extracting(e -> (Err) e).extracting(Err::value).isEqualTo("no such field 'bart'");
    x = obj.get(stringOf("bart"));
    assertThat(x).isInstanceOf(Err.class).extracting(e -> (Err) e).extracting(Err::value).isEqualTo("no such field 'bart'");
}
Also used : Val(org.projectnessie.cel.common.types.ref.Val) Err(org.projectnessie.cel.common.types.Err) ObjectT(org.projectnessie.cel.common.types.ObjectT) CollectionsObject(org.projectnessie.cel.types.jackson.types.CollectionsObject) Test(org.junit.jupiter.api.Test)

Example 7 with Err

use of org.projectnessie.cel.common.types.Err in project cel-java by projectnessie.

the class PbObjectTest method protoObjectGet.

@Test
void protoObjectGet() {
    TypeRegistry reg = newRegistry(Expr.getDefaultInstance());
    ParsedExpr msg = ParsedExpr.newBuilder().setSourceInfo(SourceInfo.newBuilder().addAllLineOffsets(Arrays.asList(1, 2, 3)).build()).build();
    Val obj = reg.nativeToValue(msg);
    assertThat(obj).isInstanceOf(ObjectT.class);
    ObjectT objVal = (ObjectT) obj;
    assertThat(objVal.get(stringOf("source_info")).equal(reg.nativeToValue(msg.getSourceInfo()))).isSameAs(True);
    assertThat(objVal.get(stringOf("expr")).equal(reg.nativeToValue(Expr.getDefaultInstance()))).isSameAs(True);
    assertThat(objVal.get(stringOf("bad_field"))).matches(Err::isError);
    assertThat(objVal.get(IntZero)).matches(Err::isError);
}
Also used : Val(org.projectnessie.cel.common.types.ref.Val) Err(org.projectnessie.cel.common.types.Err) ParsedExpr(com.google.api.expr.v1alpha1.ParsedExpr) ObjectT(org.projectnessie.cel.common.types.ObjectT) TypeRegistry(org.projectnessie.cel.common.types.ref.TypeRegistry) Test(org.junit.jupiter.api.Test)

Aggregations

Err (org.projectnessie.cel.common.types.Err)7 Val (org.projectnessie.cel.common.types.ref.Val)6 Test (org.junit.jupiter.api.Test)3 ObjectT (org.projectnessie.cel.common.types.ObjectT)3 ParsedExpr (com.google.api.expr.v1alpha1.ParsedExpr)2 ByteString (com.google.protobuf.ByteString)2 HashMap (java.util.HashMap)2 Env (org.projectnessie.cel.Env)2 Program (org.projectnessie.cel.Program)2 EvalResult (org.projectnessie.cel.Program.EvalResult)2 TypeRegistry (org.projectnessie.cel.common.types.ref.TypeRegistry)2 EvalResponse (com.google.api.expr.v1alpha1.EvalResponse)1 ExprValue (com.google.api.expr.v1alpha1.ExprValue)1 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)1 MethodSource (org.junit.jupiter.params.provider.MethodSource)1 Ast (org.projectnessie.cel.Ast)1 CEL.checkedExprToAst (org.projectnessie.cel.CEL.checkedExprToAst)1 CEL.parsedExprToAst (org.projectnessie.cel.CEL.parsedExprToAst)1 Env.newCustomEnv (org.projectnessie.cel.Env.newCustomEnv)1 Env.newEnv (org.projectnessie.cel.Env.newEnv)1