package planr // Test adapters must implement all life cycle hooks // This allows common config, code generation, etc // Test cases matching adapter configurations will be // fed into the adapter interface type Adapter interface { /* CONFIGURATION HOOKS */ Config() AdapterConfig /* BUILD CYCLE */ // Called once at the beginning of the build process InitializeBuild() // Called once with every registered test case // Can access configuration directly Build(testCase TestCase) // Called once after all builds FinalizeBuild() // Called once per test case after FinalizeBuild Evaluate(testCase TestCase) TestResult // Called once after each test has been evaluated Cleanup() }