testutils

package
v1.26.0 Latest Latest
Warning

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

Go to latest
Published: Dec 17, 2019 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Overview

Package testutils provides utility types, for use in xds tests.

Index

Constants

View Source
const (
	// DefaultChanRecvTimeout is the default timeout for receive operations on the
	// underlying channel.
	DefaultChanRecvTimeout = 1 * time.Second
	// DefaultChanBufferSize is the default buffer size of the underlying channel.
	DefaultChanBufferSize = 1
)

Variables

View Source
var ErrRecvTimeout = errors.New("timed out when waiting for value on channel")

ErrRecvTimeout is an error to indicate that a receive operation on the channel timed out.

Functions

This section is empty.

Types

type Channel

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

Channel wraps a generic channel and provides a timed receive operation.

func NewChannel

func NewChannel() *Channel

NewChannel returns a new Channel.

func NewChannelWithSize

func NewChannelWithSize(bufSize int) *Channel

NewChannelWithSize returns a new Channel with a buffer of bufSize.

func (*Channel) Receive

func (cwt *Channel) Receive() (interface{}, error)

Receive returns the value received on the underlying channel, or ErrRecvTimeout if DefaultChanRecvTimeout amount of time elapses.

func (*Channel) Send

func (cwt *Channel) Send(value interface{})

Send sends value on the underlying channel.

func (*Channel) TimedReceive

func (cwt *Channel) TimedReceive(timeout time.Duration) (interface{}, error)

TimedReceive returns the value received on the underlying channel, or ErrRecvTimeout if timeout amount of time elapsed.

type XDSClient

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

XDSClient is a fake implementation of an xds client. It exposes a bunch of channels to signal the occurrence of various events.

func NewXDSClient

func NewXDSClient() *XDSClient

NewXDSClient returns a new fake xds client.

func (*XDSClient) Close

func (xdsC *XDSClient) Close()

Close closes the xds client.

func (*XDSClient) InvokeWatchServiceCb

func (xdsC *XDSClient) InvokeWatchServiceCb(cluster string, err error)

InvokeWatchServiceCb invokes the registered service watch callback.

func (*XDSClient) WaitForWatchService

func (xdsC *XDSClient) WaitForWatchService() (string, error)

WaitForWatchService waits for WatchService to be invoked on this client within a reasonable timeout.

func (*XDSClient) WatchService

func (xdsC *XDSClient) WatchService(target string, callback func(xdsclient.ServiceUpdate, error)) func()

WatchService registers a LDS/RDS watch.

Directories

Path Synopsis
Package fakexds provides fake implementation of multiple types, for use in xds tests.
Package fakexds provides fake implementation of multiple types, for use in xds tests.

Jump to

Keyboard shortcuts

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