github.com/markusbkk/elvish@v0.0.0-20231204143114-91dc52438621/pkg/eval/go_fn_internal_test.go (about) 1 package eval 2 3 import ( 4 "testing" 5 "unsafe" 6 7 "github.com/markusbkk/elvish/pkg/eval/vals" 8 "github.com/markusbkk/elvish/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 }