src.elv.sh@v0.21.0-dev.0.20240515223629-06979efb9a2a/pkg/eval/go_fn_internal_test.go (about) 1 package eval 2 3 import ( 4 "testing" 5 "unsafe" 6 7 "src.elv.sh/pkg/eval/vals" 8 "src.elv.sh/pkg/persistent/hash" 9 ) 10 11 func TestGoFnAsValue(t *testing.T) { 12 fn1 := NewGoFn("fn1", func() {}) 13 fn2 := NewGoFn("fn2", func() {}) 14 vals.TestValue(t, fn1). 15 Kind("fn"). 16 Hash(hash.Pointer(unsafe.Pointer(fn1.(*goFn)))). 17 Equal(fn1). 18 NotEqual(fn2). 19 Repr("<builtin fn1>") 20 }