Add basic nomad integration and runner provider

This commit is contained in:
Maximilian Paß
2021-05-04 13:04:37 +02:00
parent 40a22ecbb1
commit c092199693
24 changed files with 1141 additions and 34 deletions

32
runner/runner_test.go Normal file
View File

@@ -0,0 +1,32 @@
package runner
import (
"encoding/json"
"github.com/stretchr/testify/assert"
"testing"
)
func TestIdIsStored(t *testing.T) {
runner := NewExerciseRunner("42")
assert.Equal(t, "42", runner.Id())
}
func TestStatusIsStored(t *testing.T) {
runner := NewExerciseRunner("42")
for _, status := range []Status{StatusReady, StatusRunning, StatusTimeout, StatusFinished} {
runner.SetStatus(status)
assert.Equal(t, status, runner.Status(), "The status is returned as it is stored")
}
}
func TestDefaultStatus(t *testing.T) {
runner := NewExerciseRunner("42")
assert.Equal(t, StatusReady, runner.status)
}
func TestMarshalRunner(t *testing.T) {
runner := NewExerciseRunner("42")
marshal, err := json.Marshal(runner)
assert.NoError(t, err)
assert.Equal(t, "{\"runnerId\":\"42\",\"status\":\"ready\"}", string(marshal))
}