Documentation ¶
Overview ¶
Package bundle contains internal code that corresponds to the public bundle package.
Index ¶
- func Local(clArgs []string, stdin io.Reader, stdout, stderr io.Writer, ...) int
- func Remote(clArgs []string, stdin io.Reader, stdout, stderr io.Writer, ...) int
- func RunRPCServer(r io.Reader, w io.Writer, scfg *StaticConfig) error
- func RunRPCServerTCP(port int, handshakeReq *protocol.HandshakeRequest, stdin io.Reader, ...) error
- type Delegate
- type StaticConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Local ¶
func Local(clArgs []string, stdin io.Reader, stdout, stderr io.Writer, reg *testing.Registry, d Delegate) int
Local implements the main function for local test bundles.
Main function of local test bundles should call LocalDefault instead.
func Remote ¶
func Remote(clArgs []string, stdin io.Reader, stdout, stderr io.Writer, reg *testing.Registry, d Delegate) int
Remote implements the main function for remote test bundles.
Main function of remote test bundles should call RemoteDefault instead.
func RunRPCServer ¶
RunRPCServer runs the bundle as an RPC server.
func RunRPCServerTCP ¶
func RunRPCServerTCP(port int, handshakeReq *protocol.HandshakeRequest, stdin io.Reader, stdout, stderr io.Writer, scfg *StaticConfig) error
RunRPCServerTCP runs the bundle as an RPC server listening on TCP.
Types ¶
type Delegate ¶
type Delegate struct { // TestHook is called before each test in the test bundle if it is not nil. // The returned closure is executed after the test if it is not nil. TestHook func(context.Context, *testing.TestHookState) func(context.Context, *testing.TestHookState) // RunHook is called at the beginning of a bundle execution if it is not nil. // The returned closure is executed at the end if it is not nil. // In case of errors, no test in the test bundle will run. RunHook func(context.Context) (func(context.Context) error, error) // Ready is called at the beginning of a bundle execution if it is not // nil and -waituntilready is set to true (default). // systemTestsTimeout is the timeout for waiting for system services // to be ready in seconds. // Local test bundles can specify a function to wait for the DUT to be // ready for tests to run. It is recommended to write informational // messages with testing.ContextLog to let the user know the reason for // the delay. In case of errors, no test in the test bundle will run. // This field has an effect only for local test bundles. Ready func(ctx context.Context, systemTestsTimeout time.Duration) error // BeforeReboot is called before every reboot if it is not nil. // This field has an effect only for remote test bundles. BeforeReboot func(ctx context.Context, d *dut.DUT) error // BeforeDownload is called before the framework attempts to download // external data files if it is not nil. // // Test bundles can install this hook to recover from possible network // outage caused by previous tests. Note that it is called only when // the framework needs to download one or more external data files. // // Since no specific timeout is set to ctx, do remember to set a // reasonable timeout at the beginning of the hook to avoid blocking // for long time. BeforeDownload func(ctx context.Context) }
Delegate injects functions as a part of test bundle framework implementation.
type StaticConfig ¶
type StaticConfig struct {
// contains filtered or unexported fields
}
StaticConfig contains configurations unique to a test bundle.
The supplied functions are used to provide customizations that apply to all entities in a test bundle. They may contain bundle-specific code.
func NewStaticConfig ¶
func NewStaticConfig(reg *testing.Registry, defaultTestTimeout time.Duration, d Delegate) *StaticConfig
NewStaticConfig constructs StaticConfig from given parameters.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package bundleclient provides bundle services client implementation.
|
Package bundleclient provides bundle services client implementation. |
Package bundletest provides fake test bundles environment.
|
Package bundletest provides fake test bundles environment. |
Package fakebundle provides a fake implementation of test bundles.
|
Package fakebundle provides a fake implementation of test bundles. |
Package legacyjson defines the schema of JSON-based representation of tests used only for -dumptests option in test bundles.
|
Package legacyjson defines the schema of JSON-based representation of tests used only for -dumptests option in test bundles. |