nettest

package
v1.22.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 13, 2023 License: MIT Imports: 2 Imported by: 0

Documentation

Overview

Package nettest provides an in-memory socket, Pipe. It can be used in place of net.Dial and net.Listen for faster and more hermetic tests.

Index

Constants

This section is empty.

Variables

View Source
var ErrCanceled = errors.New("pipe operation canceled by client")

ErrCanceled indicates that an operation was canceled by the client (e.g. via ctx.Done()).

Functions

This section is empty.

Types

type Pipe

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

Pipe is an in-memory socket. It provides similar functionality to net.Listen and net.Dial via the Pipe.Accept and Pipe.Connect methods, respectively. It is useful for faster and more deterministic testing of netcode.

func NewPipe

func NewPipe() *Pipe

NewPipe returns a Pipe.

func (*Pipe) Accept

func (p *Pipe) Accept(cancel <-chan struct{}) (net.Conn, error)

Accept returns a connection to the server for a client.

func (*Pipe) Connect

func (p *Pipe) Connect(cancel <-chan struct{}) (net.Conn, error)

Connect returns a connection to a client for the server.

type PipeListener added in v1.22.0

type PipeListener struct {
	*Pipe
	// contains filtered or unexported fields
}

PipeListener is a net.Listener which uses a Pipe to simulate a network connection.

func NewListener added in v1.22.0

func NewListener(pipe *Pipe) *PipeListener

NewListener returns a net.Listener which uses the given Pipe to simulate a network connection.

func (*PipeListener) Accept added in v1.22.0

func (t *PipeListener) Accept() (net.Conn, error)

func (*PipeListener) Addr added in v1.22.0

func (t *PipeListener) Addr() net.Addr

func (*PipeListener) Close added in v1.22.0

func (t *PipeListener) Close() error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL