fixtures

package
v0.0.0-...-9bd73a0 Latest Latest
Warning

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

Go to latest
Published: Jan 11, 2018 License: BSD-3-Clause Imports: 5 Imported by: 0

Documentation

Overview

Package fixtures provides easy ways to generate some random or deterministic data that can be use for tests or benchmarks.

All the publicly shared trace agent model is available.

It avoids the cumbersome step of having to redefine complicated structs in every test case and maintain common methods for quick access to almost all kind of stub data needed. It should NEVER be imported in a program, most likely in one-off projects or fuzz modes or test suites.

Index

Constants

This section is empty.

Variables

View Source
var TestDistroValues = []int64{}/* 1000 elements not displayed */

TestDistroValues is a pre-defined list of values

View Source
var YearNS = time.Duration(time.Hour * 24 * 365).Nanoseconds()

YearNS is the number of nanoseconds in a year

Functions

func GetTestSpan

func GetTestSpan() *model.Span

GetTestSpan returns a Span with different fields set

func GetTestTrace

func GetTestTrace(traceN, size int, realisticIDs bool) model.Traces

GetTestTrace returns a []Trace that is composed by “traceN“ number of traces, each one composed by “size“ number of spans.

func RandomServices

func RandomServices(maxServices, maxTags int) model.ServicesMetadata

RandomServices generates random services metadata

func RandomSpan

func RandomSpan() *model.Span

RandomSpan generates a wide-variety of spans, useful to test robustness & performance

func RandomSpanDuration

func RandomSpanDuration() int64

RandomSpanDuration generates a random span duration

func RandomSpanError

func RandomSpanError() int32

RandomSpanError generates a random span error code

func RandomSpanID

func RandomSpanID() uint64

RandomSpanID generates a random span ID

func RandomSpanMeta

func RandomSpanMeta() map[string]string

RandomSpanMeta generates some random span metadata

func RandomSpanMetrics

func RandomSpanMetrics() map[string]float64

RandomSpanMetrics generates some random span metrics

func RandomSpanName

func RandomSpanName() string

RandomSpanName generates a random span name string

func RandomSpanParentID

func RandomSpanParentID() uint64

RandomSpanParentID generates a random span parent ID

func RandomSpanResource

func RandomSpanResource() string

RandomSpanResource generates a random span resource string

func RandomSpanService

func RandomSpanService() string

RandomSpanService generates a random span service string

func RandomSpanStart

func RandomSpanStart() int64

RandomSpanStart generates a span start timestamp

func RandomSpanTraceID

func RandomSpanTraceID() uint64

RandomSpanTraceID generates a random trace ID

func RandomSpanType

func RandomSpanType() string

RandomSpanType generates a random span type

func RandomStatsBucket

func RandomStatsBucket(n int) model.StatsBucket

RandomStatsBucket returns a bucket made from n random spans, useful to run benchmarks and tests

func RandomTrace

func RandomTrace(maxLevels, maxSpans int) model.Trace

RandomTrace generates a random trace with a depth from 1 to maxLevels of spans. Each level has at most maxSpans items.

func RandomWeightedSpan

func RandomWeightedSpan() *model.WeightedSpan

RandomWeightedSpan generates a random weighted span, useful for stats tests

func StatsBucketWithSpans

func StatsBucketWithSpans(spans []*model.WeightedSpan) model.StatsBucket

StatsBucketWithSpans returns a stats bucket populated with spans stats

func TestDistribution

func TestDistribution() model.Distribution

TestDistribution returns a distribution with pre-defined values

func TestSpan

func TestSpan() *model.Span

TestSpan returns a fix span with hardcoded info, useful for reproducible tests

func TestStatsBucket

func TestStatsBucket() model.StatsBucket

TestStatsBucket returns a fixed stats bucket to be used in unit tests

func TestWeightedSpan

func TestWeightedSpan() *model.WeightedSpan

TestWeightedSpan returns a static test weighted span for reproductive stats tests

Types

This section is empty.

Jump to

Keyboard shortcuts

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