summaryrefslogtreecommitdiff
path: root/adapters.go
diff options
context:
space:
mode:
Diffstat (limited to 'adapters.go')
-rw-r--r--adapters.go26
1 files changed, 26 insertions, 0 deletions
diff --git a/adapters.go b/adapters.go
new file mode 100644
index 0000000..b9c8d9c
--- /dev/null
+++ b/adapters.go
@@ -0,0 +1,26 @@
+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()
+}