in pkg/client/mock/stub_serverV2.go [77:115]
func (s *StubServerV2) listen(opt ...grpc.ServerOption) (lis net.Listener, cleanup func() error, err error) {
cleanup = func() error { return nil }
if s.LocalRPC == "" {
lis, err := net.Listen("tcp", fmt.Sprintf(":%d", s.Port))
if err != nil {
return nil, nil, err
}
s.Port = lis.Addr().(*net.TCPAddr).Port
s.target = lis.Addr().String()
return lis, cleanup, nil
}
if runtime.GOOS == "windows" {
s.target = fmt.Sprintf("\\\\.\\pipe\\%s", s.LocalRPC)
lis, err = newNPipeListener(s.target, "")
} else {
socketDir := filepath.Join(os.TempDir(), randomString(3))
err = os.MkdirAll(socketDir, 0750)
if err != nil {
return nil, nil, err
}
cleanup = func() error {
return os.RemoveAll(socketDir)
}
// Cleanup in case if transport.Listen fails
defer func() {
if err != nil {
_ = cleanup()
cleanup = nil
}
}()
rpcPath := fmt.Sprintf("%s/%s.sock", socketDir, s.LocalRPC)
s.target = fmt.Sprintf("unix://%s", rpcPath)
lis, err = net.Listen("unix", rpcPath)
}
return lis, cleanup, err
}