Files
apitester/structs.go
Nathan Coad 7905823731
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
extend for form type requests
2025-07-11 13:46:15 +10:00

77 lines
1.6 KiB
Go

package main
type TestDefinitions struct {
Name string `json:"name"`
TestCases []TestCase `json:"testCases"`
BaseUrl string `json:"url"`
CaptureCases []CaptureCase `json:"capture"`
Headers map[string]string
Insecure bool `json:"insecure"`
}
type TestCase struct {
Name string
Disabled bool `json:"disabled"`
Path string `json:"path"`
Method string `json:"method"`
Description string `json:"description"`
Expect ExpectOptions `json:"expect"`
Header map[string]string
//Body map[string]string
Body []byte
Form []byte
// Something to store results in
ResultStatusCode int
ResultHeaders map[string][]string
ResultBody string
ResultBodyMap map[string]interface{}
}
type RandomBody struct {
IsString bool `json:"isString"`
Length int `json:"length"`
}
type CaptureCase struct {
TestCaseName string
CaptureData CaptureCaseData
}
type CaptureCaseData struct {
Header CaptureHeader `json:"header"`
Body CaptureBody `json:"body"`
}
type CaptureHeader struct {
Data map[string]string
}
type CaptureBody struct {
Data map[string]string
}
type CaptureValues struct {
Data map[string]string
}
type ExpectOptions struct {
Header HeaderTests `json:"header"`
Body BodyTests `json:"body"`
}
// Test types
type HeaderTests struct {
Contains map[string]string
Equals map[string]string
}
type BodyTests struct {
Contains map[string]string
Equals map[string]string
HasKeys []string
PathEquals string
PathContains map[string]string
}