github.com/GuanceCloud/cliutils@v1.1.21/pprofparser/service/parsing/aggregators_test.go (about) 1 package parsing 2 3 import ( 4 "fmt" 5 "testing" 6 7 "github.com/GuanceCloud/cliutils/testutil" 8 ) 9 10 func TestCutGoFuncName(t *testing.T) { 11 fmt.Println(cutGoFuncName("gopkg.in/DataDog/dd-trace-go.v1/ddtrace/tracer.(*tracer).StartSpan")) 12 fmt.Println(cutGoFuncName("bytes.(*Buffer).Write")) 13 fmt.Println(cutGoFuncName("main.Fibonacci")) 14 } 15 16 func TestGetDDDotnetMethodName(t *testing.T) { 17 18 fnName := "|lm:System.Private.CoreLib |ns:System |ct:StartupHookProvider |fn:ProcessStartupHooks" 19 20 method := getDDDotnetMethodName(fnName) 21 22 testutil.Equals(t, "StartupHookProvider.ProcessStartupHooks", method) 23 24 } 25 26 func TestGetDDDotnetField(t *testing.T) { 27 fnName := "|lm:System.Private.CoreLib |ns:System |ct:StartupHookProvider |fn:ProcessStartupHooks |lib:Standard" 28 assembly := getDDDotnetField(fnName, AssemblyTag) 29 namespace := getDDDotnetField(fnName, NamespaceTag) 30 className := getDDDotnetField(fnName, ClassTag) 31 methodName := getDDDotnetField(fnName, MethodTag) 32 libName := getDDDotnetField(fnName, "|lib:") 33 testutil.Equals(t, "System.Private.CoreLib", assembly) 34 testutil.Equals(t, "System", namespace) 35 testutil.Equals(t, "StartupHookProvider", className) 36 testutil.Equals(t, "ProcessStartupHooks", methodName) 37 testutil.Equals(t, "Standard", libName) 38 }