Allow customization of all fixture state at once
Adds FixtureCustomPreparer. Bug: 181070625 Test: m nothing Change-Id: I310e16661a0f032f778481d9b69da2e0e9a084cf
This commit is contained in:
parent
0387862185
commit
ae542a58af
|
@ -252,6 +252,15 @@ func (fs MockFS) AddToFixture() FixturePreparer {
|
|||
return FixtureMergeMockFs(fs)
|
||||
}
|
||||
|
||||
// FixtureCustomPreparer allows for the modification of any aspect of the fixture.
|
||||
//
|
||||
// This should only be used if one of the other more specific preparers are not suitable.
|
||||
func FixtureCustomPreparer(mutator func(fixture Fixture)) FixturePreparer {
|
||||
return newSimpleFixturePreparer(func(f *fixture) {
|
||||
mutator(f)
|
||||
})
|
||||
}
|
||||
|
||||
// Modify the config
|
||||
func FixtureModifyConfig(mutator func(config Config)) FixturePreparer {
|
||||
return newSimpleFixturePreparer(func(f *fixture) {
|
||||
|
@ -564,6 +573,15 @@ func FixtureCustomErrorHandler(function func(t *testing.T, result *TestResult))
|
|||
|
||||
// Fixture defines the test environment.
|
||||
type Fixture interface {
|
||||
// Config returns the fixture's configuration.
|
||||
Config() Config
|
||||
|
||||
// Context returns the fixture's test context.
|
||||
Context() *TestContext
|
||||
|
||||
// MockFS returns the fixture's mock filesystem.
|
||||
MockFS() MockFS
|
||||
|
||||
// Run the test, checking any errors reported and returning a TestResult instance.
|
||||
RunTest() *TestResult
|
||||
}
|
||||
|
@ -702,6 +720,18 @@ type fixture struct {
|
|||
errorHandler FixtureErrorHandler
|
||||
}
|
||||
|
||||
func (f *fixture) Config() Config {
|
||||
return f.config
|
||||
}
|
||||
|
||||
func (f *fixture) Context() *TestContext {
|
||||
return f.ctx
|
||||
}
|
||||
|
||||
func (f *fixture) MockFS() MockFS {
|
||||
return f.mockFS
|
||||
}
|
||||
|
||||
func (f *fixture) RunTest() *TestResult {
|
||||
f.t.Helper()
|
||||
|
||||
|
|
Loading…
Reference in New Issue