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 ¶
- func Context() context.Context
- func Database(t *testing.T) *sqlx.DB
- func DatabaseURL() string
- func OverrideLogger()
- func RequestHelperRaw(r *http.Request)
- func RequestHelperStreaming(r *http.Request)
- func ResetHorizonDB(t *testing.T, db *sqlx.DB)
- func RestoreLogger() []logrus.Entry
- func StellarCoreDatabase(t *testing.T) *sqlx.DB
- func StellarCoreDatabaseURL() string
- type Assertions
- type RequestHelper
- type StaticMockServer
- type T
- func (t *T) CoreSession() *db.Session
- func (t *T) Finish()
- func (t *T) HorizonSession() *db.Session
- func (t *T) LoadLedgerStatus() ledger.Status
- func (t *T) Scenario(name string) ledger.Status
- func (t *T) ScenarioWithoutHorizon(name string) ledger.Status
- func (t *T) UnmarshalExtras(r io.Reader) map[string]string
- func (t *T) UnmarshalNext(r io.Reader) string
- func (t *T) UnmarshalPage(r io.Reader, dest interface{}) hal.Links
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func 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 Database ¶
Database returns a connection to the horizon test database
DEPRECATED: use `Horizon()` from test/db package
func DatabaseURL ¶
func DatabaseURL() string
DatabaseURL returns the database connection the url any test use when connecting to the history/horizon database
DEPRECATED: use `HorizonURL()` from test/db package
func OverrideLogger ¶
func OverrideLogger()
OverrideLogger calls StartTest on default logger. This is used by the testing system so that we can collect output from logs during test runs. Panics if the logger is already overridden.
func RequestHelperRaw ¶
func RequestHelperStreaming ¶
func ResetHorizonDB ¶
ResetHorizonDB sets up a new horizon database with empty tables
func RestoreLogger ¶
RestoreLogger restores the default horizon logger after it is overridden using a call to `OverrideLogger`. Panics if the default logger is not presently overridden.
func StellarCoreDatabase ¶
StellarCoreDatabase returns a connection to the stellar core test database
DEPRECATED: use `StellarCore()` from test/db package
func StellarCoreDatabaseURL ¶
func StellarCoreDatabaseURL() string
StellarCoreDatabaseURL returns the database connection the url any test use when connecting to the stellar-core database
DEPRECATED: use `StellarCoreURL()` from test/db package
Types ¶
type Assertions ¶
type Assertions struct {
*assert.Assertions
}
Assertions provides an assertions helper. Custom assertions for this package can be defined as methods on this struct. foo
func (*Assertions) Problem ¶
Problem asserts that `body` is a serialized problem equal to `expected`, using Type and Status to compare for equality.
func (*Assertions) ProblemType ¶
func (a *Assertions) ProblemType(body *bytes.Buffer, typ string) bool
ProblemType asserts that the provided `body` is a JSON serialized problem whose type is `typ`
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 *chi.Mux) RequestHelper
type StaticMockServer ¶
StaticMockServer is a test helper that records it's last request
func NewStaticMockServer ¶
func NewStaticMockServer(response string) *StaticMockServer
NewStaticMockServer creates a new mock server that always responds with `response`
type T ¶
type T struct { T *testing.T Assert *assert.Assertions Require *require.Assertions Ctx context.Context HorizonDB *sqlx.DB CoreDB *sqlx.DB }
T provides a common set of functionality for each test in horizon
func (*T) CoreSession ¶
CoreSession returns a db.Session instance pointing at the stellar core test database
func (*T) Finish ¶
func (t *T) Finish()
Finish finishes the test, logging any accumulated horizon logs to the logs output
func (*T) HorizonSession ¶
HorizonSession returns a db.Session instance pointing at the horizon test database
func (*T) LoadLedgerStatus ¶
LoadLedgerStatus loads ledger state from the core db(or panicing on failure).
func (*T) ScenarioWithoutHorizon ¶
ScenarioWithoutHorizon loads the named sql scenario into the database
func (*T) UnmarshalExtras ¶
UnmarshalExtras extracts and returns extras content
func (*T) UnmarshalNext ¶
UnmarshalNext extracts and returns the next link
Directories
¶
Path | Synopsis |
---|---|
Package db provides helpers to connect to test databases.
|
Package db provides helpers to connect to test databases. |
Package transactions offers common infrastructure for testing Transactions
|
Package transactions offers common infrastructure for testing Transactions |