diff options
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/planr/sub/cli.go | 10 | ||||
| -rw-r--r-- | cmd/planr/sub/evaluate.go | 26 | 
2 files changed, 9 insertions, 27 deletions
| diff --git a/cmd/planr/sub/cli.go b/cmd/planr/sub/cli.go index 3c58f4e..e6f2256 100644 --- a/cmd/planr/sub/cli.go +++ b/cmd/planr/sub/cli.go @@ -107,16 +107,16 @@ func tcPprint(tr planr.TestResult) {    fmt.Println()  } -func printResults(passed, tc_total int, earned, points_total float64) { +func printScoring(score planr.Scoring) {    col_title.Println("Final Results:") -  pprintLabeled("passed", fmt.Sprintf("%d/%d", passed, tc_total)); +  pprintLabeled("passed", fmt.Sprintf("%d/%d", score.Passed, score.Total)); -  percent := earned / points_total * 100 +  percent := score.EarnedPoints / score.TotalPoints * 100 -  if points_total != 0 { +  if score.TotalPoints != 0 {      pprintLabeled("score", fmt.Sprintf( -      "%.2f/%.2f ~= %.1f%%", earned, points_total, percent, +      "%.2f/%.2f ~= %.1f%%", score.EarnedPoints, score.TotalPoints, percent,      ));    }  } diff --git a/cmd/planr/sub/evaluate.go b/cmd/planr/sub/evaluate.go index c2549be..81c9989 100644 --- a/cmd/planr/sub/evaluate.go +++ b/cmd/planr/sub/evaluate.go @@ -4,36 +4,18 @@ import (    "golang.flu0r1ne.net/planr"  ) +  func Evaluate(runner planr.Runner, params []string, cfg planr.Config) {    dieIncompatibleVersion(cfg)    tcs := runner.CollectCases()    trs := runner.Evaluate(tcs) -  earned := 0.0 -  total  := 0.0 -  passed := 0 -  for _, tr := range trs { -    cfg := tr.Tc.Config - -    if cfg.Points != nil { -      points := float64(*cfg.Points) - -      total += points - -      if tr.Status == planr.PASSING { -        earned += points -        passed++ -      } -    } +  score := planr.Score(trs) +  for _, tr := range trs {      tcPprint(tr)    } -  printResults( -    passed, -    len(tcs), -    earned, -    total, -  ); +  printScoring(score)  } | 
