tools: golang.org/x/tools/internal/jsonrpc2/servertest Index | Files

package servertest

import "golang.org/x/tools/internal/jsonrpc2/servertest"

Package servertest provides utilities for running tests against a remote LSP server.

Index

Package Files

servertest.go

type Connector Uses

type Connector interface {
    Connect(context.Context) *jsonrpc2.Conn
}

Connector is the interface used to connect to a server.

type PipeServer Uses

type PipeServer struct {
    // contains filtered or unexported fields
}

PipeServer is a test server that handles connections over io.Pipes.

func NewPipeServer Uses

func NewPipeServer(ctx context.Context, server jsonrpc2.StreamServer) *PipeServer

NewPipeServer returns a test server that can be connected to via io.Pipes.

func (*PipeServer) Close Uses

func (s *PipeServer) Close() error

Close closes all connected pipes.

func (*PipeServer) Connect Uses

func (s *PipeServer) Connect(ctx context.Context) *jsonrpc2.Conn

Connect creates new io.Pipes and binds them to the underlying StreamServer.

type TCPServer Uses

type TCPServer struct {
    Addr string
    // contains filtered or unexported fields
}

TCPServer is a helper for executing tests against a remote jsonrpc2 connection. Once initialized, its Addr field may be used to connect a jsonrpc2 client.

func NewTCPServer Uses

func NewTCPServer(ctx context.Context, server jsonrpc2.StreamServer) *TCPServer

NewTCPServer returns a new test server listening on local tcp port and serving incoming jsonrpc2 streams using the provided stream server. It panics on any error.

func (*TCPServer) Close Uses

func (s *TCPServer) Close() error

Close closes all connected pipes.

func (*TCPServer) Connect Uses

func (s *TCPServer) Connect(ctx context.Context) *jsonrpc2.Conn

Connect dials the test server and returns a jsonrpc2 Connection that is ready for use.

Package servertest imports 6 packages (graph) and is imported by 2 packages. Updated 2020-04-09. Refresh now. Tools for package owners.