MCPcopy Create free account
hub / github.com/cel-expr/cel-go / TestEncodersVersion

Function TestEncodersVersion

ext/encoders_test.go:95–114  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

93}
94
95func TestEncodersVersion(t *testing.T) {
96 env, err := cel.NewEnv(Encoders(EncodersVersion(0)))
97 if err != nil {
98 t.Fatalf("EncodersVersion(0) failed: %v", err)
99 }
100 if _, iss := env.Compile("base64.encode(b'hello')"); iss.Err() != nil {
101 t.Fatalf("base64.encode() got %v, wanted no error", iss.Err())
102 }
103 if _, iss := env.Compile("json.encode('hello')"); iss.Err() == nil {
104 t.Fatal("json.encode() got no error, wanted version-gated function to be unavailable")
105 }
106
107 env, err = cel.NewEnv(Encoders(EncodersVersion(1)))
108 if err != nil {
109 t.Fatalf("EncodersVersion(1) failed: %v", err)
110 }
111 if _, iss := env.Compile("json.encode('hello')"); iss.Err() != nil {
112 t.Fatalf("json.encode() got %v, wanted no error", iss.Err())
113 }
114}
115
116func testEncodersCostsEnv(t *testing.T, version int, opts ...cel.EnvOption) *cel.Env {
117 t.Helper()

Callers

nothing calls this directly

Calls 5

CompileMethod · 0.95
NewEnvFunction · 0.92
EncodersFunction · 0.85
EncodersVersionFunction · 0.85
ErrMethod · 0.80

Tested by

no test coverage detected