testing

package
v10.0.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2018 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MkTmpdir

func MkTmpdir(prefix string) (string, error)

MkTmpdir creates a temporary directory based upon the prefix passed in. If successful, it returns the temporary directory path. The directory can be deleted with a call to "os.RemoveAll(...)". In case of error, it'll return an empty string and the error.

func MkTmpdirOrDie

func MkTmpdirOrDie(prefix string) string

MkTmpdir does the same work as "MkTmpdir", except in case of errors, it'll trigger a panic.

Types

type FakeHandler

type FakeHandler struct {
	RequestReceived *http.Request
	RequestBody     string
	StatusCode      int
	ResponseBody    string
	// For logging - you can use a *testing.T
	// This will keep log messages associated with the test.
	T LogInterface

	SkipRequestFn func(verb string, url url.URL) bool
	// contains filtered or unexported fields
}

FakeHandler is to assist in testing HTTP requests. Notice that FakeHandler is not thread safe and you must not direct traffic to except for the request you want to test. You can do this by hiding it in an http.ServeMux.

func (*FakeHandler) ServeHTTP

func (f *FakeHandler) ServeHTTP(response http.ResponseWriter, request *http.Request)

func (*FakeHandler) SetResponseBody

func (f *FakeHandler) SetResponseBody(responseBody string)

func (*FakeHandler) ValidateRequest

func (f *FakeHandler) ValidateRequest(t TestInterface, expectedPath, expectedMethod string, body *string)

ValidateRequest verifies that FakeHandler received a request with expected path, method, and body.

func (*FakeHandler) ValidateRequestCount

func (f *FakeHandler) ValidateRequestCount(t TestInterface, count int) bool

type LogInterface

type LogInterface interface {
	Logf(format string, args ...interface{})
}

LogInterface is a simple interface to allow injection of Logf to report serving errors.

type TestInterface

type TestInterface interface {
	Errorf(format string, args ...interface{})
	Logf(format string, args ...interface{})
}

TestInterface is a simple interface providing Errorf, to make injection for testing easier (insert 'yo dawg' meme here).

Jump to

Keyboard shortcuts

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