unittest

package
v1.25.0-dev Latest Latest
Warning

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

Go to latest
Published: Apr 28, 2025 License: MIT Imports: 31 Imported by: 4

Documentation

Index

Constants

View Source
const NonexistentID = int64(math.MaxInt64)

NonexistentID an ID that will never exist

Variables

This section is empty.

Functions

func AssertCount

func AssertCount(t assert.TestingT, bean, expected any) bool

AssertCount assert the count of a bean

func AssertCountByCond

func AssertCountByCond(t assert.TestingT, tableName string, cond builder.Cond, expected int) bool

AssertCountByCond test the count of database entries matching bean

func AssertExistsAndLoadBean

func AssertExistsAndLoadBean[T any](t require.TestingT, bean T, conditions ...any) T

AssertExistsAndLoadBean assert that a bean exists and load it from the test database

func AssertExistsAndLoadMap

func AssertExistsAndLoadMap(t assert.TestingT, table string, conditions ...any) map[string]string

AssertExistsAndLoadMap assert that a row exists and load it from the test database

func AssertInt64InRange

func AssertInt64InRange(t assert.TestingT, low, high, value int64)

AssertInt64InRange assert value is in range [low, high]

func AssertNotExistsBean

func AssertNotExistsBean(t assert.TestingT, bean any, conditions ...any)

AssertNotExistsBean assert that a bean does not exist in the test database

func CheckConsistencyFor

func CheckConsistencyFor(t require.TestingT, beansToCheck ...any)

CheckConsistencyFor test that all matching database entries are consistent

func Cond

func Cond(query any, args ...any) any

Cond create a condition with arguments for a test

func CreateTestEngine

func CreateTestEngine(opts FixturesOptions) error

CreateTestEngine creates a memory database and loads the fixture data from fixturesDir

func DumpQueryResult

func DumpQueryResult(t require.TestingT, sqlOrBean any, sqlArgs ...any)

DumpQueryResult dumps the result of a query for debugging purpose

func FixturesFileFullPaths added in v1.23.0

func FixturesFileFullPaths(dir string, files []string) (map[string]*FixtureItem, error)

func GetBean

func GetBean[T any](t require.TestingT, bean T, conditions ...any) (ret T)

func GetCount

func GetCount(t assert.TestingT, bean any, conditions ...any) int

GetCount get the count of a bean

func GetCountByCond

func GetCountByCond(t assert.TestingT, tableName string, cond builder.Cond) int64

GetCountByCond get the count of database entries matching bean

func GetXORMEngine

func GetXORMEngine() (x *xorm.Engine)

GetXORMEngine gets the XORM engine

func InitFixtures

func InitFixtures(opts FixturesOptions, engine ...*xorm.Engine) (err error)

InitFixtures initialize test fixtures for a test database

func InitSettingsForTesting

func InitSettingsForTesting()

InitSettingsForTesting initializes config provider and load common settings for tests

func LoadFixtures

func LoadFixtures() error

LoadFixtures load fixtures for a test database

func MainTest

func MainTest(m *testing.M, testOptsArg ...*TestOptions)

MainTest a reusable TestMain(..) function for unit tests that need to use a test database. Creates the test database, and sets necessary settings.

func OrderBy added in v1.20.0

func OrderBy(orderBy string) any

OrderBy creates "ORDER BY" a test query

func PrepareTestDatabase

func PrepareTestDatabase() error

PrepareTestDatabase load test fixtures into test database

func PrepareTestEnv

func PrepareTestEnv(t testing.TB)

PrepareTestEnv prepares the environment for unit tests. Can only be called by tests that use the above MainTest(..) function.

func SyncDirs added in v1.23.0

func SyncDirs(srcPath, destPath string) error

SyncDirs synchronizes files recursively from source to target directory. It returns error when error occurs in underlying functions.

func SyncFile

func SyncFile(srcPath, destPath string) error

SyncFile synchronizes the two files. This is skipped if both files exist and the size, modtime, and mode match.

Types

type FixtureItem

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

type FixturesLoader added in v1.23.0

type FixturesLoader interface {
	Load() error
}

func NewFixturesLoader added in v1.23.0

func NewFixturesLoader(x *xorm.Engine, opts FixturesOptions) (FixturesLoader, error)

type FixturesOptions

type FixturesOptions struct {
	Dir   string
	Files []string
}

FixturesOptions fixtures needs to be loaded options

type TestOptions added in v1.17.0

type TestOptions struct {
	FixtureFiles []string
	SetUp        func() error // SetUp will be executed before all tests in this package
	TearDown     func() error // TearDown will be executed after all tests in this package
}

TestOptions represents test options

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳