http

package
v0.5.1 Latest Latest
Warning

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

Go to latest
Published: Sep 27, 2022 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MakeRequestAndExpectEventuallyConsistentResponse

func MakeRequestAndExpectEventuallyConsistentResponse(t *testing.T, r roundtripper.RoundTripper, gwAddr string, expected ExpectedResponse)

MakeRequestAndExpectEventuallyConsistentResponse makes a request with the given parameters, understanding that the request may fail for some amount of time.

Once the request succeeds consistently with the response having the expected status code, make additional assertions on the response body using the provided ExpectedResponse.

func WaitForConsistentResponse

func WaitForConsistentResponse(t *testing.T, r roundtripper.RoundTripper, req roundtripper.Request, expected ExpectedResponse, threshold int)

WaitForConsistentResponse repeats the provided request until it completes with a response having the expected response consistently. The provided threshold determines how many times in a row this must occur to be considered "consistent".

Types

type ExpectedRequest

type ExpectedRequest struct {
	Request

	// AbsentHeaders are names of headers that are expected
	// *not* to be present on the request.
	AbsentHeaders []string
}

ExpectedRequest defines expected properties of a request.

type ExpectedResponse

type ExpectedResponse struct {
	// Request defines the request to make.
	Request Request

	// ExpectedRequest defines the request that
	// is expected to arrive at the backend. If
	// not specified, the backend request will be
	// expected to match Request.
	ExpectedRequest *ExpectedRequest

	StatusCode int
	Backend    string
	Namespace  string
}

ExpectedResponse defines the response expected for a given request.

type Request

type Request struct {
	Host    string
	Method  string
	Path    string
	Headers map[string]string
}

Request can be used as both the request to make and a means to verify that echoserver received the expected request. Note that multiple header values can be provided, as a comma-separated value.

Jump to

Keyboard shortcuts

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