testutil

package
v0.0.0-...-bb56650 Latest Latest
Warning

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

Go to latest
Published: Feb 20, 2024 License: MIT Imports: 34 Imported by: 0

Documentation

Overview

Package testutil provides testing helpers.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AssertEqual

func AssertEqual[T types.Type](tb testtb.TB, expected, actual T) bool

AssertEqual asserts that two BSON values are equal.

func AssertEqualSlices

func AssertEqualSlices[T types.Type](tb testtb.TB, expected, actual []T) bool

AssertEqualSlices asserts that two BSON slices are equal.

func AssertNotEqual

func AssertNotEqual[T types.Type](tb testtb.TB, expected, actual T) bool

AssertNotEqual asserts that two BSON values are not equal.

func AssertNotEqualSlices

func AssertNotEqualSlices[T types.Type](tb testtb.TB, expected, actual []T) bool

AssertNotEqualSlices asserts that two BSON slices are not equal.

func CollectionName

func CollectionName(tb testtb.TB) string

CollectionName returns a stable FerretDB collection name for that test.

func CompareAndSetByPathNum

func CompareAndSetByPathNum[T types.CompositeTypeInterface](tb testtb.TB, expected, actual T, delta float64, path types.Path)

CompareAndSetByPathNum asserts that two values with the same path in two objects (documents or arrays) are within a given numerical delta, then updates the expected object with the actual value.

func CompareAndSetByPathTime

func CompareAndSetByPathTime[T types.CompositeTypeInterface](tb testtb.TB, expected, actual T, delta time.Duration, path types.Path)

CompareAndSetByPathTime asserts that two values with the same path in two objects (documents or arrays) are within a given time delta, then updates the expected object with the actual value.

func Ctx

func Ctx(tb testtb.TB) context.Context

Ctx returns test context. It is canceled when test is finished or interrupted.

func DatabaseName

func DatabaseName(tb testtb.TB) string

DatabaseName returns a stable FerretDB database name for that test.

func DirectoryName

func DirectoryName(tb testtb.TB) string

DirectoryName returns a stable directory name for that test.

It also could be used as PostgreSQL database name (not FerretDB database / PostgreSQL schema name).

func Dump

func Dump[T types.Type](tb testtb.TB, o T) string

Dump returns string representation for debugging.

func DumpSlice

func DumpSlice[T types.Type](tb testtb.TB, s []T) string

DumpSlice returns string representation for debugging.

func GetByPath

func GetByPath[T types.CompositeTypeInterface](tb testtb.TB, comp T, path types.Path) any

GetByPath returns a value by path - a sequence of indexes and keys.

func IndentJSON

func IndentJSON(tb testtb.TB, b []byte) []byte

IndentJSON returns an indented form of the JSON input.

func LevelLogger

func LevelLogger(tb testtb.TB, level zap.AtomicLevel) *zap.Logger

LevelLogger returns zap test logger with given level and valid configuration.

func Logger

func Logger(tb testtb.TB) *zap.Logger

Logger returns zap test logger with valid configuration.

func MustParseDumpFile

func MustParseDumpFile(path ...string) []byte

MustParseDumpFile panics if fails to parse file input to byte array.

func ParseDump

func ParseDump(tb testtb.TB, s string) []byte

ParseDump parses string to bytes, in tests.

func ParseDumpFile

func ParseDumpFile(tb testtb.TB, path ...string) []byte

ParseDumpFile parses file input to bytes, in tests.

func SetByPath

func SetByPath[T types.CompositeTypeInterface](tb testtb.TB, comp T, value any, path types.Path)

SetByPath sets the value by path - a sequence of indexes and keys.

The path must exist.

func TestHanaURI

func TestHanaURI(tb testtb.TB) string

TestHanaURI returns a HANA Database URL for testing. HANATODO Create a Database per test run?

func TestMySQLURI

func TestMySQLURI(tb testtb.TB, ctx context.Context, baseURI string) string

TestMySQLURI returns MySQL URI with test-specific database. It will be created before test and dropped after unless test fails.

Base URI may be empty.

func TestPostgreSQLURI

func TestPostgreSQLURI(tb testtb.TB, ctx context.Context, baseURI string) string

TestPostgreSQLURI returns PostgreSQL URI with test-specific database. It will be created before test and dropped after unless test fails.

Base URI may be empty.

func TestSQLiteURI

func TestSQLiteURI(tb testtb.TB, baseURI string) string

TestSQLiteURI returns SQLite URI with test-specific directory. It will be created before test and dropped after unless test fails.

Base URI may be empty.

Types

This section is empty.

Directories

Path Synopsis
Package testfail provides testing helpers for expected tests failures.
Package testfail provides testing helpers for expected tests failures.
Package teststress provides a helper for stress testing.
Package teststress provides a helper for stress testing.
Package testtb provides a common testing interface.
Package testtb provides a common testing interface.

Jump to

Keyboard shortcuts

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