github.com/sohaha/zlsgo@v1.7.13-0.20240501141223-10dd1a906f76/zreflect/type_test.go (about) 1 package zreflect_test 2 3 import ( 4 "reflect" 5 "testing" 6 7 "github.com/sohaha/zlsgo" 8 "github.com/sohaha/zlsgo/zreflect" 9 ) 10 11 func TestType(t *testing.T) { 12 tt := zlsgo.NewTest(t) 13 14 typ := zreflect.TypeOf(zreflect.Demo) 15 ztyp := zreflect.NewType(zreflect.Demo) 16 vtyp := zreflect.NewType(zreflect.NewValue(zreflect.Demo)) 17 zztyp := zreflect.NewType(ztyp) 18 zgtyp := zreflect.NewType(typ) 19 atyp := zreflect.NewValue(zreflect.Demo).Type() 20 21 tt.Equal(reflect.Struct, typ.Kind()) 22 tt.Equal(reflect.Struct, ztyp.Native().Kind()) 23 tt.Equal(reflect.Struct, vtyp.Native().Kind()) 24 tt.Equal(reflect.Struct, zztyp.Native().Kind()) 25 tt.Equal(reflect.Struct, zgtyp.Native().Kind()) 26 tt.Equal(reflect.Struct, atyp.Native().Kind()) 27 28 tt.Equal(typ.NumMethod(), ztyp.NumMethod()) 29 30 }