Add tests and end-to-end tests for websocket execution
For unit tests, this mocks the runners Execute method with a customizable function that operates on the request, streams and exit channel to simulate a real execution. End-to-end tests are moved to the tests/e2e_tests folder. The tests folder allows us to have shared helper functions for all tests in a separate package (tests) that is not included in the non-test build. This also adds one second of delay before each end-to-end test case by using the TestSetup method of suite. By slowing down test execution, this gives Nomad time to create new allocations when a test requested a runner. Another solution could be to increase the scale of the job to have enough allocations for all end-to-end tests. Co-authored-by: Maximilian Paß <maximilian.pass@student.hpi.uni-potsdam.de>
This commit is contained in:
@@ -55,7 +55,7 @@ func createTestJob() (*nomadApi.Job, *nomadApi.Job) {
|
||||
base := nomadApi.NewBatchJob("python-job", "python-job", "region-name", 100)
|
||||
job := nomadApi.NewBatchJob("python-job", "python-job", "region-name", 100)
|
||||
task := createTestTask()
|
||||
task.Name = fmt.Sprintf(TaskNameFormat, *job.ID)
|
||||
task.Name = TaskName
|
||||
image := "python:latest"
|
||||
task.Config = map[string]interface{}{"image": image}
|
||||
task.Config["network_mode"] = "none"
|
||||
|
Reference in New Issue
Block a user