diff options
Diffstat (limited to 'cmd/sub')
| -rw-r--r-- | cmd/sub/build.go | 12 | ||||
| -rw-r--r-- | cmd/sub/evaluate.go | 38 | 
2 files changed, 44 insertions, 6 deletions
| diff --git a/cmd/sub/build.go b/cmd/sub/build.go index 8108768..58c3a38 100644 --- a/cmd/sub/build.go +++ b/cmd/sub/build.go @@ -5,13 +5,15 @@ import (  	"golang.flu0r1ne.net/planr/adapters/gtest"  ) -func Build(params []string) { -  gtestAdapter := gtest.GtestAdapter {} +func Runner() planr.Runner { +  r := planr.Runner {} +  r.RegisterAdapter(>est.GtestAdapter{}) +  return r +} -  r := planr.Runner{} -  r.RegisterAdapter(>estAdapter) +func Build(params []string) {    rd := planr.RubricDir() -  r.Run(rd) +  Runner().Build(rd)  } diff --git a/cmd/sub/evaluate.go b/cmd/sub/evaluate.go index 35dd48d..a0f858b 100644 --- a/cmd/sub/evaluate.go +++ b/cmd/sub/evaluate.go @@ -2,8 +2,44 @@ package sub  import (    "fmt" +  "golang.flu0r1ne.net/planr"  )  func Evaluate(params []string) { -  fmt.Print(params)  +  rd := planr.RubricDir() + +  tcs := Runner().Evaluate(rd) + +  fmt.Printf("\n\nREPORT:\n=======\n\n") + +  for _, tc := range tcs { +    cfg := tc.Config +   +    name := tc.Cname +    if cfg.Title != nil { +      name = *cfg.Title +    } + +    status := "NOT RUN" +    if tc.Result != nil { +      if tc.Result.Pass { +        status = "PASS" +      } else { +        status = "FAIL" +      } +    } + +    var points float32 =  0.0 +    if cfg.Points != nil { +      points = *cfg.Points +    } + +    fmt.Printf("[%s] %s (%f)\n", status, name, points) + +    if cfg.Description != nil { +      fmt.Printf("> %s\n", *cfg.Description) +    } + +    fmt.Println() +  }  } | 
