Documentation
¶
Index ¶
- func NewRequestFieldMatchersFromMapView(mapMatchers map[string][]v2.MatcherViewV5) map[string][]RequestFieldMatchers
- func ValidateResponseDelayPayload(j v1.ResponseDelayPayloadView) (err error)
- type CachedResponse
- type ClosestMiss
- type MatchError
- type QueryRequestFieldMatchers
- type RequestDetails
- type RequestFieldMatchers
- type RequestMatcher
- type RequestMatcherResponsePair
- type RequestResponsePair
- type ResponseDelay
- type ResponseDelayList
- type ResponseDelays
- type ResponseDetails
- type Simulation
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewRequestFieldMatchersFromMapView ¶ added in v0.17.0
func NewRequestFieldMatchersFromMapView(mapMatchers map[string][]v2.MatcherViewV5) map[string][]RequestFieldMatchers
func ValidateResponseDelayPayload ¶ added in v0.9.0
func ValidateResponseDelayPayload(j v1.ResponseDelayPayloadView) (err error)
Types ¶
type CachedResponse ¶ added in v0.11.0
type CachedResponse struct {
Request RequestDetails
MatchingPair *RequestMatcherResponsePair
ClosestMiss *ClosestMiss
}
func NewCachedResponseFromBytes ¶ added in v0.11.0
func NewCachedResponseFromBytes(data []byte) (*CachedResponse, error)
func (CachedResponse) Encode ¶ added in v0.11.0
func (this CachedResponse) Encode() ([]byte, error)
type ClosestMiss ¶ added in v0.12.0
type ClosestMiss struct {
RequestDetails RequestDetails
Response v2.ResponseDetailsViewV5
RequestMatcher v2.RequestMatcherViewV5
MissedFields []string
State map[string]string
}
func (*ClosestMiss) BuildView ¶ added in v0.12.0
func (this *ClosestMiss) BuildView() *v2.ClosestMissView
func (*ClosestMiss) GetMessage ¶ added in v0.12.0
func (this *ClosestMiss) GetMessage() string
type MatchError ¶ added in v0.12.2
type MatchError struct {
ClosestMiss *ClosestMiss
// contains filtered or unexported fields
}
func NewMatchError ¶ added in v0.12.2
func NewMatchError(error string, matchedOnAllButHeadersAtLeastOnce bool) *MatchError
func NewMatchErrorWithClosestMiss ¶ added in v0.12.2
func NewMatchErrorWithClosestMiss(closestMiss *ClosestMiss, error string, isCachable bool) *MatchError
func (MatchError) Error ¶ added in v0.12.2
func (this MatchError) Error() string
type QueryRequestFieldMatchers ¶ added in v0.17.3
type QueryRequestFieldMatchers map[string][]RequestFieldMatchers
func NewQueryRequestFieldMatchersFromMapView ¶ added in v0.17.3
func NewQueryRequestFieldMatchersFromMapView(mapMatchers *v2.QueryMatcherViewV5) *QueryRequestFieldMatchers
func (*QueryRequestFieldMatchers) Add ¶ added in v0.17.3
func (q *QueryRequestFieldMatchers) Add(k string, v []RequestFieldMatchers)
type RequestDetails ¶
type RequestDetails struct {
Path string
Method string
Destination string
Scheme string
Query map[string][]string
Body string
Headers map[string][]string
// contains filtered or unexported fields
}
RequestDetails stores information about request, it's used for creating unique hash and also as a payload structure
func NewRequestDetailsFromHttpRequest ¶ added in v0.8.2
func NewRequestDetailsFromHttpRequest(req *http.Request) (RequestDetails, error)
func NewRequestDetailsFromRequest ¶ added in v0.9.0
func NewRequestDetailsFromRequest(data interfaces.Request) RequestDetails
func (*RequestDetails) ConvertToRequestDetailsView ¶
func (this *RequestDetails) ConvertToRequestDetailsView() v2.RequestDetailsView
func (RequestDetails) GetRawQuery ¶ added in v0.14.1
func (this RequestDetails) GetRawQuery() string
func (*RequestDetails) Hash ¶
func (r *RequestDetails) Hash() string
func (*RequestDetails) HashWithoutHost ¶
func (r *RequestDetails) HashWithoutHost() string
func (*RequestDetails) QueryString ¶ added in v0.13.0
func (this *RequestDetails) QueryString() string
TODO: Remove this This only exists as there are parts of Hoverfly that still require the request query parameters to be a string and not a map
type RequestFieldMatchers ¶ added in v0.11.0
type RequestFieldMatchers struct {
Matcher string
Value interface{}
}
func NewRequestFieldMatchersFromView ¶ added in v0.11.0
func NewRequestFieldMatchersFromView(matchers []v2.MatcherViewV5) []RequestFieldMatchers
func (RequestFieldMatchers) BuildView ¶ added in v0.11.0
func (this RequestFieldMatchers) BuildView() v2.MatcherViewV5
type RequestMatcher ¶ added in v0.11.0
type RequestMatcher struct {
Path []RequestFieldMatchers
Method []RequestFieldMatchers
Destination []RequestFieldMatchers
Scheme []RequestFieldMatchers
DeprecatedQuery []RequestFieldMatchers
Body []RequestFieldMatchers
Headers map[string][]RequestFieldMatchers
Query *QueryRequestFieldMatchers
RequiresState map[string]string
}
func (RequestMatcher) IncludesHeaderMatching ¶ added in v0.12.2
func (this RequestMatcher) IncludesHeaderMatching() bool
func (RequestMatcher) IncludesStateMatching ¶ added in v0.14.0
func (this RequestMatcher) IncludesStateMatching() bool
func (RequestMatcher) ToEagerlyCachable ¶ added in v0.14.0
func (this RequestMatcher) ToEagerlyCachable() *RequestDetails
type RequestMatcherResponsePair ¶ added in v0.11.0
type RequestMatcherResponsePair struct {
RequestMatcher RequestMatcher
Response ResponseDetails
}
func NewRequestMatcherResponsePairFromView ¶ added in v0.11.0
func NewRequestMatcherResponsePairFromView(view *v2.RequestMatcherResponsePairViewV5) *RequestMatcherResponsePair
func (*RequestMatcherResponsePair) BuildView ¶ added in v0.11.0
func (this *RequestMatcherResponsePair) BuildView() v2.RequestMatcherResponsePairViewV5
type RequestResponsePair ¶ added in v0.8.1
type RequestResponsePair struct {
Response ResponseDetails
Request RequestDetails
}
Payload structure holds request and response structure
func NewRequestResponsePairFromRequestResponsePairView ¶ added in v0.8.1
func NewRequestResponsePairFromRequestResponsePairView(pairView interfaces.RequestResponsePair) RequestResponsePair
func (*RequestResponsePair) ConvertToRequestResponsePairView ¶ added in v0.8.1
func (this *RequestResponsePair) ConvertToRequestResponsePairView() v2.RequestResponsePairViewV1
type ResponseDelay ¶
type ResponseDelay struct {
UrlPattern string `json:"urlPattern"`
HttpMethod string `json:"httpMethod"`
Delay int `json:"delay"`
}
func (*ResponseDelay) Execute ¶
func (this *ResponseDelay) Execute()
type ResponseDelayList ¶ added in v0.7.1
type ResponseDelayList []ResponseDelay
func (ResponseDelayList) ConvertToResponseDelayPayloadView ¶ added in v0.9.0
func (this ResponseDelayList) ConvertToResponseDelayPayloadView() v1.ResponseDelayPayloadView
func (*ResponseDelayList) GetDelay ¶ added in v0.7.1
func (this *ResponseDelayList) GetDelay(request RequestDetails) *ResponseDelay
type ResponseDelays ¶ added in v0.7.1
type ResponseDelays interface {
GetDelay(request RequestDetails) *ResponseDelay
ConvertToResponseDelayPayloadView() v1.ResponseDelayPayloadView
}
type ResponseDetails ¶
type ResponseDetails struct {
Status int
Body string
Headers map[string][]string
Templated bool
TransitionsState map[string]string
RemovesState []string
}
ResponseDetails structure hold response body from external service, body is not decoded and is supposed to be bytes, however headers should provide all required information for later decoding by the client.
func NewResponseDetailsFromResponse ¶ added in v0.9.0
func NewResponseDetailsFromResponse(data interfaces.Response) ResponseDetails
func (*ResponseDetails) ConvertToResponseDetailsView ¶
func (r *ResponseDetails) ConvertToResponseDetailsView() v2.ResponseDetailsView
This function will create a JSON appriopriate version of ResponseDetails for the v2 API If the response headers indicate that the content is encoded, or it has a non-matching supported mimetype, we base64 encode it.
func (*ResponseDetails) ConvertToResponseDetailsViewV5 ¶ added in v0.17.0
func (r *ResponseDetails) ConvertToResponseDetailsViewV5() v2.ResponseDetailsViewV5
type Simulation ¶ added in v0.10.2
type Simulation struct {
ResponseDelays ResponseDelays
// contains filtered or unexported fields
}
func NewSimulation ¶ added in v0.10.2
func NewSimulation() *Simulation
func (*Simulation) AddPair ¶ added in v0.17.0
func (this *Simulation) AddPair(pair *RequestMatcherResponsePair)
func (*Simulation) AddPairInSequence ¶ added in v0.17.0
func (this *Simulation) AddPairInSequence(pair *RequestMatcherResponsePair, state *state.State)
func (*Simulation) DeleteMatchingPairs ¶ added in v0.14.2
func (this *Simulation) DeleteMatchingPairs()
func (*Simulation) GetMatchingPairs ¶ added in v0.14.2
func (this *Simulation) GetMatchingPairs() []RequestMatcherResponsePair