tstest

package
v1.2.1 Latest Latest
Warning

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

Go to latest
Published: Nov 3, 2020 License: BSD-3-Clause Imports: 11 Imported by: 0

Documentation

Overview

Package tstest provides utilities for use in unit tests.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FixLogs

func FixLogs(t *testing.T)

func PanicOnLog

func PanicOnLog()

PanicOnLog modifies the standard library log package's default output to an io.Writer that panics, to root out code that's not plumbing their logging through explicit tailscale.com/logger.Logf paths.

func UnfixLogs

func UnfixLogs(t *testing.T)

Types

type Clock

type Clock struct {
	// Start is the first value returned by Now.
	Start time.Time
	// Step is how much to advance with each Now call.
	Step time.Duration
	// Present is the time that the next Now call will receive.
	Present time.Time

	sync.Mutex
}

Clock is a testing clock that advances every time its Now method is called, beginning at Start.

The zero value starts virtual time at an arbitrary value recorded in Start on the first call to Now, and time never advances.

func (*Clock) Advance added in v1.0.0

func (c *Clock) Advance(d time.Duration)

func (*Clock) Now

func (c *Clock) Now() time.Time

Now returns the virtual clock's current time, and avances it according to its step configuration.

func (*Clock) Reset

func (c *Clock) Reset()

Reset rewinds the virtual clock to its start time.

type LogLineTracker added in v1.2.0

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

LogLineTracker is a logger that tracks which log format patterns it's seen and can report which expected ones were not seen later.

func NewLogLineTracker added in v1.2.0

func NewLogLineTracker(logf logger.Logf, expectedFormatStrings []string) *LogLineTracker

NewLogLineTracker produces a LogLineTracker wrapping a given logf that tracks whether expectedFormatStrings were seen.

func (*LogLineTracker) Check added in v1.2.0

func (lt *LogLineTracker) Check() []string

Check returns which format strings haven't been logged yet.

func (*LogLineTracker) Logf added in v1.2.0

func (lt *LogLineTracker) Logf(format string, args ...interface{})

Logf logs to its underlying logger and also tracks that the given format pattern has been seen.

type ResourceCheck

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

func NewResourceCheck

func NewResourceCheck() *ResourceCheck

func (*ResourceCheck) Assert

func (r *ResourceCheck) Assert(t testing.TB)

Directories

Path Synopsis
Package natlab lets us simulate different types of networks all in-memory without running VMs or requiring root, etc.
Package natlab lets us simulate different types of networks all in-memory without running VMs or requiring root, etc.

Jump to

Keyboard shortcuts

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