Documentation ¶
Index ¶
- func Compare(a, b any, opt ...cmp.Option) error
- func IsNotSameError(e error) bool
- type Amphisbaena
- func (a *Amphisbaena[C, J, Q, S]) HookActualJudge(hook ...JudgeHook[J, S])
- func (a *Amphisbaena[C, J, Q, S]) HookActualRequest(hook ...RequestHook[C, Q, S])
- func (a *Amphisbaena[C, J, Q, S]) HookExpectJudge(hook ...JudgeHook[J, S])
- func (a *Amphisbaena[C, J, Q, S]) HookExpectRequest(hook ...RequestHook[C, Q, S])
- func (a *Amphisbaena[C, J, Q, S]) HookJudge(hook ...JudgeHook[J, S])
- func (a *Amphisbaena[C, J, Q, S]) HookRequest(hook ...RequestHook[C, Q, S])
- func (a *Amphisbaena[C, J, Q, S]) Minion(testcase *Testcase[Q]) Minion[C, J, Q, S]
- type Client
- type JudgeFunc
- type JudgeHook
- type JudgeScenario
- type Minion
- func (m *Minion[C, J, Q, S]) Judge() error
- func (m *Minion[C, J, Q, S]) Process() (error, error)
- func (m *Minion[C, J, Q, S]) ProcessedActual() S
- func (m *Minion[C, J, Q, S]) ProcessedExpect() S
- func (m *Minion[C, J, Q, S]) RecordActual() map[string]any
- func (m *Minion[C, J, Q, S]) RecordExpect() map[string]any
- func (m *Minion[C, J, Q, S]) Request() (actual, expect error)
- type NotSameError
- type Ordeal
- type Request
- type RequestFunc
- func ApplyRequestHooks[C Client[Q, S], Q Request, S Response](f RequestFunc[C, Q, S], hooks ...RequestHook[C, Q, S]) RequestFunc[C, Q, S]
- func WithProfile[C Client[Q, S], Q Request, S Response](f RequestFunc[C, Q, S]) RequestFunc[C, Q, S]
- func WithRecord[C Client[Q, S], Q Request, S Response](f RequestFunc[C, Q, S]) RequestFunc[C, Q, S]
- type RequestHook
- type RequestScenario
- type Response
- type Testcase
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsNotSameError ¶
Types ¶
type Amphisbaena ¶
type Amphisbaena[C Client[Q, S], J Ordeal[S], Q Request, S Response] struct {
// contains filtered or unexported fields
}
func (*Amphisbaena[C, J, Q, S]) HookActualJudge ¶
func (a *Amphisbaena[C, J, Q, S]) HookActualJudge(hook ...JudgeHook[J, S])
func (*Amphisbaena[C, J, Q, S]) HookActualRequest ¶
func (a *Amphisbaena[C, J, Q, S]) HookActualRequest(hook ...RequestHook[C, Q, S])
func (*Amphisbaena[C, J, Q, S]) HookExpectJudge ¶
func (a *Amphisbaena[C, J, Q, S]) HookExpectJudge(hook ...JudgeHook[J, S])
func (*Amphisbaena[C, J, Q, S]) HookExpectRequest ¶
func (a *Amphisbaena[C, J, Q, S]) HookExpectRequest(hook ...RequestHook[C, Q, S])
func (*Amphisbaena[C, J, Q, S]) HookJudge ¶
func (a *Amphisbaena[C, J, Q, S]) HookJudge(hook ...JudgeHook[J, S])
func (*Amphisbaena[C, J, Q, S]) HookRequest ¶
func (a *Amphisbaena[C, J, Q, S]) HookRequest(hook ...RequestHook[C, Q, S])
func (*Amphisbaena[C, J, Q, S]) Minion ¶
func (a *Amphisbaena[C, J, Q, S]) Minion(testcase *Testcase[Q]) Minion[C, J, Q, S]
type JudgeFunc ¶
type JudgeFunc[J Ordeal[S], S Response] func(*JudgeScenario[J, S]) error
func ApplyJudgeHooks ¶
func ApplyJudgeHooks[J Ordeal[S], S Response]( f JudgeFunc[J, S], hooks ...JudgeHook[J, S], ) JudgeFunc[J, S]
TODO sequential diff record (lifecycle: process -> judge -> process -> judge -> ...)
type JudgeScenario ¶
type JudgeScenario[J Ordeal[S], S Response] struct { Error error // contains filtered or unexported fields }
type Minion ¶
type Minion[C Client[Q, S], J Ordeal[S], Q Request, S Response] struct {
// contains filtered or unexported fields
}
func (*Minion[C, J, Q, S]) ProcessedActual ¶
func (m *Minion[C, J, Q, S]) ProcessedActual() S
func (*Minion[C, J, Q, S]) ProcessedExpect ¶
func (m *Minion[C, J, Q, S]) ProcessedExpect() S
func (*Minion[C, J, Q, S]) RecordActual ¶
func (*Minion[C, J, Q, S]) RecordExpect ¶
type NotSameError ¶
func (*NotSameError) Error ¶
func (e *NotSameError) Error() string
type RequestFunc ¶
type RequestFunc[C Client[Q, S], Q Request, S Response] func(*RequestScenario[C, Q, S]) error
func ApplyRequestHooks ¶
func ApplyRequestHooks[C Client[Q, S], Q Request, S Response]( f RequestFunc[C, Q, S], hooks ...RequestHook[C, Q, S], ) RequestFunc[C, Q, S]
func WithProfile ¶
func WithProfile[C Client[Q, S], Q Request, S Response](f RequestFunc[C, Q, S]) RequestFunc[C, Q, S]
func WithRecord ¶
func WithRecord[C Client[Q, S], Q Request, S Response](f RequestFunc[C, Q, S]) RequestFunc[C, Q, S]
type RequestHook ¶
type RequestHook[C Client[Q, S], Q Request, S Response] func(RequestFunc[C, Q, S]) RequestFunc[C, Q, S]
type RequestScenario ¶
type RequestScenario[C Client[Q, S], Q Request, S Response] struct { Error error // contains filtered or unexported fields }
func (*RequestScenario[C, Q, S]) Record ¶
func (s *RequestScenario[C, Q, S]) Record() map[string]any
func (*RequestScenario[C, Q, S]) Request ¶
func (s *RequestScenario[C, Q, S]) Request() Q
func (*RequestScenario[C, Q, S]) Response ¶
func (s *RequestScenario[C, Q, S]) Response() S
Click to show internal directories.
Click to hide internal directories.