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

Function TestReferenceInfoEquals

common/ast/ast_test.go:265–342  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

263}
264
265func TestReferenceInfoEquals(t *testing.T) {
266 tests := []struct {
267 name string
268 a *ast.ReferenceInfo
269 b *ast.ReferenceInfo
270 equal bool
271 }{
272 {
273 name: "single overload equal",
274 a: ast.NewFunctionReference(overloads.AddBytes),
275 b: ast.NewFunctionReference(overloads.AddBytes),
276 equal: true,
277 },
278 {
279 name: "single overload not equal",
280 a: ast.NewFunctionReference(overloads.AddBytes),
281 b: ast.NewFunctionReference(overloads.AddDouble),
282 equal: false,
283 },
284 {
285 name: "single and multiple overload not equal",
286 a: ast.NewFunctionReference(overloads.AddBytes),
287 b: ast.NewFunctionReference(overloads.AddBytes, overloads.AddDouble),
288 equal: false,
289 },
290 {
291 name: "multiple overloads equal",
292 a: ast.NewFunctionReference(overloads.AddBytes, overloads.AddDouble),
293 b: ast.NewFunctionReference(overloads.AddDouble, overloads.AddBytes),
294 equal: true,
295 },
296 {
297 name: "identifier reference equal",
298 a: ast.NewIdentReference("BYTES", nil),
299 b: ast.NewIdentReference("BYTES", nil),
300 equal: true,
301 },
302 {
303 name: "identifier reference not equal",
304 a: ast.NewIdentReference("BYTES", nil),
305 b: ast.NewIdentReference("TRUE", nil),
306 equal: false,
307 },
308 {
309 name: "identifier and constant reference not equal",
310 a: ast.NewIdentReference("BYTES", nil),
311 b: ast.NewIdentReference("BYTES", types.Bytes("bytes")),
312 equal: false,
313 },
314 {
315 name: "constant references equal",
316 a: ast.NewIdentReference("BYTES", types.Bytes("bytes")),
317 b: ast.NewIdentReference("BYTES", types.Bytes("bytes")),
318 equal: true,
319 },
320 {
321 name: "constant references not equal",
322 a: ast.NewIdentReference("BYTES", types.Bytes("bytes")),

Callers

nothing calls this directly

Calls 4

NewFunctionReferenceFunction · 0.92
NewIdentReferenceFunction · 0.92
BytesTypeAlias · 0.92
EqualsMethod · 0.80

Tested by

no test coverage detected