diff options
Diffstat (limited to 'src/exercises/runner.go')
-rw-r--r-- | src/exercises/runner.go | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/exercises/runner.go b/src/exercises/runner.go index 1fe2a32..1490f13 100644 --- a/src/exercises/runner.go +++ b/src/exercises/runner.go @@ -1,9 +1,17 @@ package exercises -import "os/exec" +import ( + "fmt" + "os/exec" +) -func Run(exercise string) (string, error) { - cmd := exec.Command("go", "run", "./exercises/"+exercise+".go") +func Run(name string) (string, error) { + exercise, err := Find(name) + if err != nil { + return "", err + } + + cmd := exec.Command("go", "run", fmt.Sprintf("./%s", exercise.Path)) cOut, err := cmd.CombinedOutput() return string(cOut), err } |