fakeclient

package
v1.61.0-dev Latest Latest
Warning

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

Go to latest
Published: Nov 14, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package fakeclient provides a fake implementation of an xDS client.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	// Embed XDSClient so this fake client implements the interface, but it's
	// never set (it's always nil). This may cause nil panic since not all the
	// methods are implemented.
	xdsclient.XDSClient
	// contains filtered or unexported fields
}

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

func NewClient

func NewClient() *Client

NewClient returns a new fake xds client.

func NewClientWithName

func NewClientWithName(name string) *Client

NewClientWithName returns a new fake xds client with the provided name. This is used in cases where multiple clients are created in the tests and we need to make sure the client is created for the expected balancer name.

func (*Client) BootstrapConfig added in v1.34.0

func (xdsC *Client) BootstrapConfig() *bootstrap.Config

BootstrapConfig returns the bootstrap config.

func (*Client) InvokeWatchEDSCallback

func (xdsC *Client) InvokeWatchEDSCallback(name string, update xdsresource.EndpointsUpdate, err error)

InvokeWatchEDSCallback invokes the registered edsWatch callback.

Not thread safe with WatchEndpoints. Only call this after WaitForWatchEDS.

func (*Client) InvokeWatchListenerCallback added in v1.34.0

func (xdsC *Client) InvokeWatchListenerCallback(update xdsresource.ListenerUpdate, err error)

InvokeWatchListenerCallback invokes the registered ldsWatch callback.

Not thread safe with WatchListener. Only call this after WaitForWatchListener.

func (*Client) InvokeWatchRouteConfigCallback added in v1.34.0

func (xdsC *Client) InvokeWatchRouteConfigCallback(name string, update xdsresource.RouteConfigUpdate, err error)

InvokeWatchRouteConfigCallback invokes the registered rdsWatch callback.

Not thread safe with WatchRouteConfig. Only call this after WaitForWatchRouteConfig.

func (*Client) LoadStore added in v1.33.0

func (xdsC *Client) LoadStore() *load.Store

LoadStore returns the underlying load data store.

func (*Client) Name

func (xdsC *Client) Name() string

Name returns the name of the xds client.

func (*Client) ReportLoad

func (xdsC *Client) ReportLoad(server *bootstrap.ServerConfig) (loadStore *load.Store, cancel func())

ReportLoad starts reporting load about clusterName to server.

func (*Client) SetBootstrapConfig added in v1.34.0

func (xdsC *Client) SetBootstrapConfig(cfg *bootstrap.Config)

SetBootstrapConfig updates the bootstrap config.

func (*Client) WaitForCancelEDSWatch added in v1.30.0

func (xdsC *Client) WaitForCancelEDSWatch(ctx context.Context) (string, error)

WaitForCancelEDSWatch waits for a EDS watch to be cancelled and returns context.DeadlineExceeded otherwise.

func (*Client) WaitForCancelListenerWatch added in v1.34.0

func (xdsC *Client) WaitForCancelListenerWatch(ctx context.Context) error

WaitForCancelListenerWatch waits for a LDS watch to be cancelled and returns context.DeadlineExceeded otherwise.

func (*Client) WaitForCancelReportLoad added in v1.40.0

func (xdsC *Client) WaitForCancelReportLoad(ctx context.Context) error

WaitForCancelReportLoad waits for a load report to be cancelled and returns context.DeadlineExceeded otherwise.

func (*Client) WaitForCancelRouteConfigWatch added in v1.34.0

func (xdsC *Client) WaitForCancelRouteConfigWatch(ctx context.Context) (string, error)

WaitForCancelRouteConfigWatch waits for a RDS watch to be cancelled and returns context.DeadlineExceeded otherwise.

func (*Client) WaitForReportLoad

func (xdsC *Client) WaitForReportLoad(ctx context.Context) (ReportLoadArgs, error)

WaitForReportLoad waits for ReportLoad to be invoked on this client and returns the arguments passed to it.

func (*Client) WaitForWatchEDS

func (xdsC *Client) WaitForWatchEDS(ctx context.Context) (string, error)

WaitForWatchEDS waits for WatchEndpoints to be invoked on this client and returns the clusterName being watched.

func (*Client) WaitForWatchListener added in v1.34.0

func (xdsC *Client) WaitForWatchListener(ctx context.Context) (string, error)

WaitForWatchListener waits for WatchCluster to be invoked on this client and returns the serviceName being watched.

func (*Client) WaitForWatchRouteConfig added in v1.34.0

func (xdsC *Client) WaitForWatchRouteConfig(ctx context.Context) (string, error)

WaitForWatchRouteConfig waits for WatchCluster to be invoked on this client and returns the routeName being watched.

func (*Client) WatchEndpoints added in v1.29.0

func (xdsC *Client) WatchEndpoints(clusterName string, callback func(xdsresource.EndpointsUpdate, error)) (cancel func())

WatchEndpoints registers an EDS watch for provided clusterName.

func (*Client) WatchListener added in v1.34.0

func (xdsC *Client) WatchListener(serviceName string, callback func(xdsresource.ListenerUpdate, error)) func()

WatchListener registers a LDS watch.

func (*Client) WatchRouteConfig added in v1.34.0

func (xdsC *Client) WatchRouteConfig(routeName string, callback func(xdsresource.RouteConfigUpdate, error)) func()

WatchRouteConfig registers a RDS watch.

type ReportLoadArgs

type ReportLoadArgs struct {
	// Server is the name of the server to which the load is reported.
	Server *bootstrap.ServerConfig
}

ReportLoadArgs wraps the arguments passed to ReportLoad.

Jump to

Keyboard shortcuts

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