github.com/jlmeeker/kismatic@v1.10.1-0.20180612190640-57f9005a1f1a/pkg/inspector/check/tcp_test.go (about) 1 package check 2 3 import "testing" 4 5 func TestGetProcNameFromSockStatLine(t *testing.T) { 6 tests := []struct { 7 line string 8 expectedProc string 9 }{ 10 { 11 line: `0 128 *:80 *:* users:(("nginx",pid=30729,fd=10),("nginx",pid=30728,fd=10),("nginx",pid=30721,fd=10))`, 12 expectedProc: "nginx", 13 }, 14 { 15 line: `0 128 :::6443 :::* users:(("kube-apiserver",pid=21199,fd=59))`, 16 expectedProc: "kube-apiserver", 17 }, 18 { 19 line: `0 128 :::2379 :::* users:(("docker-proxy",pid=18718,fd=4))`, 20 expectedProc: "docker-proxy", 21 }, 22 { 23 line: `0 128 :::10251 :::* users:(("kube-scheduler",pid=21506,fd=12))`, 24 expectedProc: "kube-scheduler", 25 }, 26 { 27 line: `0 128 :::10251 :::* users:(("kube-scheduler",pid=21506,fd=12))`, 28 expectedProc: "kube-scheduler", 29 }, 30 { 31 line: `0 128 :::10254 :::* users:(("nginx-ingress-c",pid=30704,fd=6))`, 32 expectedProc: "nginx-ingress-c", 33 }, 34 } 35 for _, test := range tests { 36 t.Run(test.expectedProc, func(t *testing.T) { 37 got, err := getProcNameFromTCPSockStatLine(test.line) 38 if err != nil { 39 t.Errorf("error getting process: %v", err) 40 } 41 if got != test.expectedProc { 42 t.Errorf("expected process name to be %q, but got %q", test.expectedProc, got) 43 } 44 }) 45 } 46 }