internaltest

package
v1.5.0 Latest Latest
Warning

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

Go to latest
Published: Mar 16, 2022 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Aligned8Byte

func Aligned8Byte(fields []FieldOffset, out io.Writer) bool

Aligned8Byte returns if all fields are aligned modulo 8-bytes.

Error messaging is printed to out for any field determined misaligned.

func NewTestError

func NewTestError(s string) error

Types

type Env

type Env struct {
	Name   string
	Value  string
	Exists bool
}

type EnvStore

type EnvStore interface {
	// Records the environment variable into the store.
	Record(key string)

	// Restore recovers the environment variables in the store.
	Restore() error
}

EnvStore stores and recovers environment variables.

func NewEnvStore

func NewEnvStore() EnvStore

func SetEnvVariables

func SetEnvVariables(env map[string]string) (EnvStore, error)

type FieldOffset

type FieldOffset struct {
	// Name of the field.
	Name string

	// Offset of the field in bytes.
	//
	// To compute this at compile time use unsafe.Offsetof.
	Offset uintptr
}

FieldOffset is a preprocessor representation of a struct field alignment.

type Harness added in v1.0.0

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

Harness is a testing harness used to test implementations of the OpenTelemetry API.

func NewHarness added in v1.0.0

func NewHarness(t *testing.T) *Harness

NewHarness returns an instantiated *Harness using t.

func (*Harness) TestTracer added in v1.0.0

func (h *Harness) TestTracer(subjectFactory func() trace.Tracer)

TestTracer runs validation tests for an implementation of the OpenTelemetry Tracer API.

func (*Harness) TestTracerProvider added in v1.0.0

func (h *Harness) TestTracerProvider(subjectFactory func() trace.TracerProvider)

TestTracerProvider runs validation tests for an implementation of the OpenTelemetry TracerProvider API.

type TestError

type TestError string

func (TestError) Error

func (e TestError) Error() string

type TextMapCarrier added in v1.0.0

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

TextMapCarrier is a storage medium for a TextMapPropagator used in testing. The methods of a TextMapCarrier are concurrent safe.

func NewTextMapCarrier added in v1.0.0

func NewTextMapCarrier(data map[string]string) *TextMapCarrier

NewTextMapCarrier returns a new *TextMapCarrier populated with data.

func (*TextMapCarrier) Get added in v1.0.0

func (c *TextMapCarrier) Get(key string) string

Get returns the value associated with the passed key.

func (*TextMapCarrier) GotKey added in v1.0.0

func (c *TextMapCarrier) GotKey(t *testing.T, key string) bool

GotKey tests if c.Get has been called for key.

func (*TextMapCarrier) GotN added in v1.0.0

func (c *TextMapCarrier) GotN(t *testing.T, n int) bool

GotN tests if n calls to c.Get have been made.

func (*TextMapCarrier) Keys added in v1.0.0

func (c *TextMapCarrier) Keys() []string

Keys returns the keys for which this carrier has a value.

func (*TextMapCarrier) Reset added in v1.0.0

func (c *TextMapCarrier) Reset(data map[string]string)

Reset zeros out the recording state and sets the carried values to data.

func (*TextMapCarrier) Set added in v1.0.0

func (c *TextMapCarrier) Set(key, value string)

Set stores the key-value pair.

func (*TextMapCarrier) SetKeyValue added in v1.0.0

func (c *TextMapCarrier) SetKeyValue(t *testing.T, key, value string) bool

SetKeyValue tests if c.Set has been called for the key-value pair.

func (*TextMapCarrier) SetN added in v1.0.0

func (c *TextMapCarrier) SetN(t *testing.T, n int) bool

SetN tests if n calls to c.Set have been made.

type TextMapPropagator added in v1.0.0

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

TextMapPropagator is a propagation.TextMapPropagator used for testing.

func NewTextMapPropagator added in v1.0.0

func NewTextMapPropagator(name string) *TextMapPropagator

NewTextMapPropagator returns a new TextMapPropagator for testing. It will use name as the key it injects into a TextMapCarrier when Inject is called.

func (*TextMapPropagator) Extract added in v1.0.0

Extract reads cross-cutting concerns for p from carrier into ctx.

func (*TextMapPropagator) ExtractedN added in v1.0.0

func (p *TextMapPropagator) ExtractedN(t *testing.T, ctx context.Context, n int) bool

ExtractedN tests if p has made n extractions from the lineage of ctx. nolint (context is not first arg)

func (*TextMapPropagator) Fields added in v1.0.0

func (p *TextMapPropagator) Fields() []string

Fields returns the name of p as the key who's value is set with Inject.

func (*TextMapPropagator) Inject added in v1.0.0

Inject sets cross-cutting concerns for p from ctx into carrier.

func (*TextMapPropagator) InjectedN added in v1.0.0

func (p *TextMapPropagator) InjectedN(t *testing.T, carrier *TextMapCarrier, n int) bool

InjectedN tests if p has made n injections to carrier.

Jump to

Keyboard shortcuts

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