From 5b3d4fae6e03e5471a10c653fc0b016cc5e5dcfa Mon Sep 17 00:00:00 2001 From: obscuren Date: Wed, 1 Jan 2014 15:49:38 +0100 Subject: Work in progress external test runner --- test_runner.go | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 test_runner.go (limited to 'test_runner.go') diff --git a/test_runner.go b/test_runner.go new file mode 100644 index 000000000..da93533dd --- /dev/null +++ b/test_runner.go @@ -0,0 +1,35 @@ +package main + +import ( + "fmt" + "testing" + "encoding/json" +) + +type TestSource struct { + Inputs map[string]string + Expectation string +} + +func NewTestSource(source string) *TestSource { + s := &TestSource{} + err := json.Unmarshal([]byte(source), s) + if err != nil { + fmt.Println(err) + } + + return s +} + +type TestRunner struct { + source *TestSource +} + +func NewTestRunner(t *testing.T) *TestRunner { + return &TestRunner{} +} + +func (runner *TestRunner) RunFromString(input string, Cb func(*TestSource)) { + source := NewTestSource(input) + Cb(source) +} -- cgit