aboutsummaryrefslogtreecommitdiffstats
path: root/src/exercises/runner.go
blob: 1490f130195299e2886818e2663b0d205c2e65ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package exercises

import (
	"fmt"
	"os/exec"
)

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
}