admincontract

package
v0.26.0 Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2026 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AssertPaginationContract

func AssertPaginationContract(t *testing.T, list ListFunc, cfg PaginationContractConfig)

AssertPaginationContract verifies that total is stable across pages and page slicing honors total/per-page semantics.

Types

type ListFunc

type ListFunc func(context.Context, ListOptions) ([]map[string]any, int, error)

ListFunc describes the contract target list function.

type ListOptions

type ListOptions struct {
	Page       int
	PerPage    int
	SortBy     string
	SortDesc   bool
	Filters    map[string]any
	Predicates []ListPredicate
	Fields     []string
	Search     string
}

ListOptions is a transport-agnostic list query shape for list contracts.

type ListPredicate

type ListPredicate struct {
	Field    string
	Operator string
	Values   []string
}

ListPredicate is a transport-agnostic predicate shape for list contracts.

type PaginationContractConfig

type PaginationContractConfig struct {
	TotalExpected int
	PerPage       int
	SortBy        string
	SortDesc      bool
	Filters       map[string]any
	Predicates    []ListPredicate
	Search        string
	UniqueKey     string
}

PaginationContractConfig configures assertions for a list total/pagination contract.

Jump to

Keyboard shortcuts

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