From 4f6854fa9cbbafe78ea3fe0373f63db93297a39b Mon Sep 17 00:00:00 2001 From: Flu0r1ne Date: Wed, 11 Aug 2021 23:00:24 -0500 Subject: Prepare for dh-golang --- Makefile | 2 +- cmd/main.go | 50 --------------------------------------------- cmd/planr/main.go | 50 +++++++++++++++++++++++++++++++++++++++++++++ cmd/planr/sub/build.go | 19 +++++++++++++++++ cmd/planr/sub/evaluate.go | 52 +++++++++++++++++++++++++++++++++++++++++++++++ cmd/sub/build.go | 19 ----------------- cmd/sub/evaluate.go | 52 ----------------------------------------------- go.mod | 3 +-- 8 files changed, 123 insertions(+), 124 deletions(-) delete mode 100644 cmd/main.go create mode 100644 cmd/planr/main.go create mode 100644 cmd/planr/sub/build.go create mode 100644 cmd/planr/sub/evaluate.go delete mode 100644 cmd/sub/build.go delete mode 100644 cmd/sub/evaluate.go diff --git a/Makefile b/Makefile index 99ddf7e..424c67d 100644 --- a/Makefile +++ b/Makefile @@ -9,7 +9,7 @@ endif CMD := planr $(CMD): - go build -o $(CMD) ./cmd/main.go + go build -o $(CMD) ./cmd/planr/main.go install: mkdir -p $(DESTDIR)$(PREFIX)$(BINDIR)/ diff --git a/cmd/main.go b/cmd/main.go deleted file mode 100644 index 9cacf98..0000000 --- a/cmd/main.go +++ /dev/null @@ -1,50 +0,0 @@ -package main - -import ( - "os" - "io" - "fmt" - "golang.flu0r1ne.net/planr/cmd/sub" -) - -const ( - VERSION = "0.0.1" -) - -func printUsage(w io.Writer) { - fmt.Fprintf (w, "usage: %s command args ... \n", os.Args[0]) - fmt.Fprintln(w, " help ") - fmt.Fprintln(w, " version ") - fmt.Fprintln(w, " build ") - fmt.Fprintln(w, " evaluate ") -} - -func dieUsage() { - printUsage(os.Stderr) - os.Exit(1) -} - -func main() { - - if len(os.Args) < 2 { - dieUsage() - } - - subcommand := os.Args[1] - subargs := os.Args[2:] - - switch subcommand { - case "version": - fmt.Printf("%s\n", VERSION) - case "build": - sub.Build(subargs) - case "evaluate": - sub.Evaluate(subargs) - case "help", "-h", "-help", "--help": - printUsage(os.Stdout) - default: - fmt.Fprintf(os.Stderr, "unrecognized command %s\n", subcommand) - dieUsage() - } - -} diff --git a/cmd/planr/main.go b/cmd/planr/main.go new file mode 100644 index 0000000..c65edb1 --- /dev/null +++ b/cmd/planr/main.go @@ -0,0 +1,50 @@ +package main + +import ( + "os" + "io" + "fmt" + "golang.flu0r1ne.net/planr/cmd/planr/sub" +) + +const ( + VERSION = "0.0.1" +) + +func printUsage(w io.Writer) { + fmt.Fprintf (w, "usage: %s command args ... \n", os.Args[0]) + fmt.Fprintln(w, " help ") + fmt.Fprintln(w, " version ") + fmt.Fprintln(w, " build ") + fmt.Fprintln(w, " evaluate ") +} + +func dieUsage() { + printUsage(os.Stderr) + os.Exit(1) +} + +func main() { + + if len(os.Args) < 2 { + dieUsage() + } + + subcommand := os.Args[1] + subargs := os.Args[2:] + + switch subcommand { + case "version": + fmt.Printf("%s\n", VERSION) + case "build": + sub.Build(subargs) + case "evaluate": + sub.Evaluate(subargs) + case "help", "-h", "-help", "--help": + printUsage(os.Stdout) + default: + fmt.Fprintf(os.Stderr, "unrecognized command %s\n", subcommand) + dieUsage() + } + +} diff --git a/cmd/planr/sub/build.go b/cmd/planr/sub/build.go new file mode 100644 index 0000000..58c3a38 --- /dev/null +++ b/cmd/planr/sub/build.go @@ -0,0 +1,19 @@ +package sub + +import ( + "golang.flu0r1ne.net/planr" + "golang.flu0r1ne.net/planr/adapters/gtest" +) + +func Runner() planr.Runner { + r := planr.Runner {} + r.RegisterAdapter(>est.GtestAdapter{}) + return r +} + +func Build(params []string) { + + rd := planr.RubricDir() + + Runner().Build(rd) +} diff --git a/cmd/planr/sub/evaluate.go b/cmd/planr/sub/evaluate.go new file mode 100644 index 0000000..1174b3f --- /dev/null +++ b/cmd/planr/sub/evaluate.go @@ -0,0 +1,52 @@ +package sub + +import ( + "fmt" + "golang.flu0r1ne.net/planr" +) + +func Evaluate(params []string) { + rd := planr.RubricDir() + + tcs := Runner().Evaluate(rd) + + fmt.Printf("\n\nREPORT:\n=======\n\n") + + earned := 0.0 + total := 0.0 + for _, tc := range tcs { + cfg := tc.Config + + name := tc.Cname + if cfg.Title != nil { + name = *cfg.Title + } + + var points float64 = 0.0 + if cfg.Points != nil { + points = float64(*cfg.Points) + } + + status := "SILENT" + if tc.Result != nil { + if tc.Result.Pass { + status = "PASS" + earned += points + } else { + status = "FAIL" + } + } + + total += points + + fmt.Printf("[%s] %s (%f)\n", status, name, points) + + if cfg.Description != nil { + fmt.Printf("> %s\n", *cfg.Description) + } + + fmt.Println() + } + + fmt.Printf("Score: %f (%f%%)\n", earned, (earned / total) * 100) +} diff --git a/cmd/sub/build.go b/cmd/sub/build.go deleted file mode 100644 index 58c3a38..0000000 --- a/cmd/sub/build.go +++ /dev/null @@ -1,19 +0,0 @@ -package sub - -import ( - "golang.flu0r1ne.net/planr" - "golang.flu0r1ne.net/planr/adapters/gtest" -) - -func Runner() planr.Runner { - r := planr.Runner {} - r.RegisterAdapter(>est.GtestAdapter{}) - return r -} - -func Build(params []string) { - - rd := planr.RubricDir() - - Runner().Build(rd) -} diff --git a/cmd/sub/evaluate.go b/cmd/sub/evaluate.go deleted file mode 100644 index 1174b3f..0000000 --- a/cmd/sub/evaluate.go +++ /dev/null @@ -1,52 +0,0 @@ -package sub - -import ( - "fmt" - "golang.flu0r1ne.net/planr" -) - -func Evaluate(params []string) { - rd := planr.RubricDir() - - tcs := Runner().Evaluate(rd) - - fmt.Printf("\n\nREPORT:\n=======\n\n") - - earned := 0.0 - total := 0.0 - for _, tc := range tcs { - cfg := tc.Config - - name := tc.Cname - if cfg.Title != nil { - name = *cfg.Title - } - - var points float64 = 0.0 - if cfg.Points != nil { - points = float64(*cfg.Points) - } - - status := "SILENT" - if tc.Result != nil { - if tc.Result.Pass { - status = "PASS" - earned += points - } else { - status = "FAIL" - } - } - - total += points - - fmt.Printf("[%s] %s (%f)\n", status, name, points) - - if cfg.Description != nil { - fmt.Printf("> %s\n", *cfg.Description) - } - - fmt.Println() - } - - fmt.Printf("Score: %f (%f%%)\n", earned, (earned / total) * 100) -} diff --git a/go.mod b/go.mod index cb19fee..5de0411 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,5 @@ module golang.flu0r1ne.net/planr go 1.16 require ( - github.com/BurntSushi/toml v0.3.1 // indirect - github.com/jinzhu/copier v0.3.2 // indirect + github.com/BurntSushi/toml v0.3.1 ) -- cgit v1.2.3