integration

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2020 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Overview

Copyright 2016 CoreOS, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.package recipe

Package integration implements tests built upon embedded etcd, and focus on etcd correctness.

Features/goals of the integration tests: 1. test the whole code base except command-line parsing. 2. check internal data, including raft, store and etc. 3. based on goroutines, which is faster than process. 4. mainly tests user behavior and user-facing API.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewClientV3

func NewClientV3(m *member) (*clientv3.Client, error)

NewClientV3 creates a new grpc client connection to the member

func NewCluster

func NewCluster(t *testing.T, size int) *cluster

NewCluster returns an unlaunched cluster of the given size which has been set to use static bootstrap.

func NewClusterByConfig

func NewClusterByConfig(t *testing.T, cfg *ClusterConfig) *cluster

NewClusterByConfig returns an unlaunched cluster defined by a cluster configuration

Types

type ClusterConfig

type ClusterConfig struct {
	Size         int
	PeerTLS      *transport.TLSInfo
	ClientTLS    *transport.TLSInfo
	DiscoveryURL string
	UseV3        bool
	UseGRPC      bool
}

type ClusterV3

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

func NewClusterV3

func NewClusterV3(t *testing.T, cfg *ClusterConfig) *ClusterV3

NewClusterV3 returns a launched cluster with a grpc client connection for each cluster member.

func (ClusterV3) AddMember

func (c ClusterV3) AddMember(t *testing.T)

func (*ClusterV3) Client

func (c *ClusterV3) Client(i int) *clientv3.Client

func (ClusterV3) HTTPMembers

func (c ClusterV3) HTTPMembers() []client.Member

HTTPMembers returns a list of all active members as client.Members

func (ClusterV3) Launch

func (c ClusterV3) Launch(t *testing.T)

func (*ClusterV3) RandClient

func (c *ClusterV3) RandClient() *clientv3.Client

func (ClusterV3) RemoveMember

func (c ClusterV3) RemoveMember(t *testing.T, id uint64)

func (*ClusterV3) Terminate

func (c *ClusterV3) Terminate(t *testing.T)

func (ClusterV3) URL

func (c ClusterV3) URL(i int) string

func (ClusterV3) URLs

func (c ClusterV3) URLs() []string

URLs returns a list of all active client URLs in the cluster

type SortableMemberSliceByPeerURLs

type SortableMemberSliceByPeerURLs []client.Member

func (SortableMemberSliceByPeerURLs) Len

func (SortableMemberSliceByPeerURLs) Less

func (p SortableMemberSliceByPeerURLs) Less(i, j int) bool

func (SortableMemberSliceByPeerURLs) Swap

func (p SortableMemberSliceByPeerURLs) Swap(i, j int)

Jump to

Keyboard shortcuts

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