test

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Jan 29, 2016 License: Apache-2.0, BSD-2-Clause-Views, MIT Imports: 20 Imported by: 0

Documentation

Overview

Package test contains simple test helpers that should not have any dependencies on horizon's packages. think constants, custom matchers, generic helpers etc.

Index

Constants

View Source
const (
	DefaultTestDatabaseUrl            = "postgres://localhost:5432/horizon_test?sslmode=disable"
	DefaultTestStellarCoreDatabaseUrl = "postgres://localhost:5432/stellar-core_test?sslmode=disable"
)

Variables

This section is empty.

Functions

func Asset

func Asset(name string) ([]byte, error)

Asset loads and returns the asset for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetDir

func AssetDir(name string) ([]string, error)

AssetDir returns the file names below a certain directory embedded in the file by go-bindata. For example if you run go-bindata on data/... and data contains the following hierarchy:

data/
  foo.txt
  img/
    a.png
    b.png

then AssetDir("data") would return []string{"foo.txt", "img"} AssetDir("data/img") would return []string{"a.png", "b.png"} AssetDir("foo.txt") and AssetDir("notexist") would return an error AssetDir("") will return []string{"data"}.

func AssetInfo

func AssetInfo(name string) (os.FileInfo, error)

AssetInfo loads and returns the asset info for the given name. It returns an error if the asset could not be found or could not be loaded.

func AssetNames

func AssetNames() []string

AssetNames returns the names of the assets.

func Context

func Context() context.Context

Context provides a context suitable for testing in tests that do not create a full App instance (in which case your tests should be using the app's context). This context has a logger bound to it suitable for testing.

func ContextWithLogBuffer

func ContextWithLogBuffer() (context.Context, *bytes.Buffer)

ContextWithLogBuffer returns a context and a buffer into which the new, bound logger will write into. This method allows you to inspect what data was logged more easily in your tests.

func DatabaseUrl

func DatabaseUrl() string

DatabaseUrl returns the database connection the url any test use when connecting to the history/horizon database

func LoadScenario

func LoadScenario(scenarioName string)

LoadScenario populates the test databases with pre-created scenarios. Each scenario is in the scenarios subfolder of this package and are a pair of sql files, one per database.

func MustAsset

func MustAsset(name string) []byte

MustAsset is like Asset but panics when Asset would return an error. It simplifies safe initialization of global variables.

func OpenDatabase

func OpenDatabase(dsn string) *sqlx.DB

OpenDatabase opens a database, panicing if it cannot

func RequestHelperNoop

func RequestHelperNoop(r *http.Request)

func RequestHelperRemoteAddr

func RequestHelperRemoteAddr(ip string) func(r *http.Request)

func RequestHelperStreaming

func RequestHelperStreaming(r *http.Request)

func RequestHelperXFF

func RequestHelperXFF(xff string) func(r *http.Request)

func RestoreAsset

func RestoreAsset(dir, name string) error

RestoreAsset restores an asset under the given directory

func RestoreAssets

func RestoreAssets(dir, name string) error

RestoreAssets restores an asset under the given directory recursively

func ShouldBeErr

func ShouldBeErr(a interface{}, options ...interface{}) string

func StellarCoreDatabaseUrl

func StellarCoreDatabaseUrl() string

StellarCoreDatabaseUrl returns the database connection the url any test use when connecting to the stellar-core database

Types

type RequestHelper

type RequestHelper interface {
	Get(string, func(*http.Request)) *httptest.ResponseRecorder
	Post(string, url.Values, func(*http.Request)) *httptest.ResponseRecorder
}

func NewRequestHelper

func NewRequestHelper(router *web.Mux) RequestHelper

type StaticMockServer

type StaticMockServer struct {
	*httptest.Server
	LastRequest *http.Request
}

func NewStaticMockServer

func NewStaticMockServer(response string) *StaticMockServer

Jump to

Keyboard shortcuts

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