tests

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Oct 23, 2023 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Overview

This file is copied from https://github.com/googleapis/google-cloud-go/blob/main/bigtable/internal/mockserver/inmem.go with minor modification.

This file defines data types that allow the test cases to customize the behavior of mock server: "<operation>Action" types tell the server to either perform the operation or return an error. You can build a sequence of actions to make the server return streaming responses and (or) respond to ordered retry attempts, where the server will perform each action only once. "<operation>ReqRecord" types let the server log the request from client with timestamp.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type RowStatus

type RowStatus int

RowStatus is a Enum type to hold value for read row's status ranging from None to Drop below.

const (
	None   RowStatus = iota // Indicates the row hasn't been returned completely
	Commit                  // Indicates that all the chunks of a row have been returned
	Reset                   // Indicates that the row will be re-read
	Drop                    // Indicates a row is filtered out from ReadRows response
)

type Server

type Server struct {
	Addr string

	// Any unimplemented methods will cause a panic when called.
	btpb.BigtableServer

	// ReadRowsFn mocks ReadRows.
	ReadRowsFn func(*btpb.ReadRowsRequest, btpb.Bigtable_ReadRowsServer) error
	// SampleRowKeysFn mocks SampleRowKeys.
	SampleRowKeysFn func(*btpb.SampleRowKeysRequest, btpb.Bigtable_SampleRowKeysServer) error
	// MutateRowFn mocks MutateRow.
	MutateRowFn func(context.Context, *btpb.MutateRowRequest) (*btpb.MutateRowResponse, error)
	// MutateRowsFn mocks MutateRows.
	MutateRowsFn func(*btpb.MutateRowsRequest, btpb.Bigtable_MutateRowsServer) error
	// CheckAndMutateRowFn mocks CheckAndMutateRow.
	CheckAndMutateRowFn func(context.Context, *btpb.CheckAndMutateRowRequest) (*btpb.CheckAndMutateRowResponse, error)
	// ReadModifyWriteRowFn mocks ReadModifyWriteRow.
	ReadModifyWriteRowFn func(context.Context, *btpb.ReadModifyWriteRowRequest) (*btpb.ReadModifyWriteRowResponse, error)
	// contains filtered or unexported fields
}

Server is an in-memory Cloud Bigtable fake. It is unauthenticated, and only a rough approximation.

func NewServer

func NewServer(laddr string, opt ...grpc.ServerOption) (*Server, error)

NewServer creates a new Server. The Server will be listening for gRPC connections, without TLS, on the provided address. The resolved address is named by the Addr field.

func (*Server) CheckAndMutateRow

CheckAndMutateRow implements CheckAndMutateRow of the BigtableServer interface.

func (*Server) Close

func (s *Server) Close() error

Close closes the server.

func (*Server) MutateRow

func (s *Server) MutateRow(ctx context.Context, req *btpb.MutateRowRequest) (*btpb.MutateRowResponse, error)

MutateRow implements MutateRow of the BigtableServer interface.

func (*Server) MutateRows

MutateRows implements MutateRows of the BigtableServer interface.

func (*Server) ReadModifyWriteRow

ReadModifyWriteRow implements ReadModifyWriteRow of the BigtableServer interface.

func (*Server) ReadRows

ReadRows implements ReadRows of the BigtableServer interface.

func (*Server) SampleRowKeys

SampleRowKeys implements SampleRowKeys of the BigtableServer interface.

func (*Server) Start

func (s *Server) Start()

Start starts the server

Jump to

Keyboard shortcuts

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