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  }