From 17a24204da7dd1477472a972403eee50d30f52e8 Mon Sep 17 00:00:00 2001 From: gedi Date: Fri, 12 Jun 2015 15:39:41 +0300 Subject: [PATCH] run built test suite source with godog command --- builder.go | 2 -- cmd/godog/main.go | 10 ++++++++++ runner.go | 14 +++++++++++--- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/builder.go b/builder.go index 66b193e..8b19aa1 100644 --- a/builder.go +++ b/builder.go @@ -18,12 +18,10 @@ var mainTpl = `package main import ( "github.com/DATA-DOG/godog" - "os" ) func main() { godog.Run() - os.Exit(0) } ` diff --git a/cmd/godog/main.go b/cmd/godog/main.go index f968eb8..fdf2e39 100644 --- a/cmd/godog/main.go +++ b/cmd/godog/main.go @@ -1,7 +1,10 @@ package main import ( + "log" "os" + "os/exec" + "strings" "github.com/DATA-DOG/godog" ) @@ -26,4 +29,11 @@ func main() { panic(err) } w.Close() + + cmd := strings.TrimSpace("go run " + builtFile + " " + strings.Join(os.Args[1:], " ")) + out, err := exec.Command("sh", "-c", cmd).CombinedOutput() + if err != nil { + panic(err) + } + log.Println("output:", string(out)) } diff --git a/runner.go b/runner.go index 1cf1f1b..b9911c8 100644 --- a/runner.go +++ b/runner.go @@ -1,7 +1,15 @@ package godog -import "log" +import ( + "fmt" + "log" +) -func Run() { - log.Println("running godoc, num registered steps:", len(stepHandlers)) +func Run() error { + log.Println("running godoc, num registered steps:", len(stepHandlers), "color test:", red("red")) + return nil +} + +func red(s string) string { + return fmt.Sprintf("\033[31m%s\033[0m", s) }