Refactor test run to separate method

This will allow us to parallelise it more easily

Signed-off-by: Frank Hamand <frankhamand@gmail.com>
pull/4144/head
Frank Hamand 7 years ago
parent 55a338579a
commit 127e8c3d95
No known key found for this signature in database
GPG Key ID: 3A94326B72FE75DF

@ -75,47 +75,55 @@ func (ts *TestSuite) Run(env *Environment) error {
return err return err
} }
test.result.StartedAt = timeconv.Now() if err := test.run(env); err != nil {
if err := env.streamRunning(test.result.Name); err != nil {
return err return err
} }
test.result.Status = release.TestRun_RUNNING
resourceCreated := true ts.Results = append(ts.Results, test.result)
if err := env.createTestPod(test); err != nil { }
resourceCreated = false
if streamErr := env.streamError(test.result.Info); streamErr != nil {
return err
}
}
resourceCleanExit := true ts.CompletedAt = timeconv.Now()
status := v1.PodUnknown return nil
if resourceCreated { }
status, err = env.getTestPodStatus(test)
if err != nil { func (t *test) run(env *Environment) error {
resourceCleanExit = false t.result.StartedAt = timeconv.Now()
if streamErr := env.streamError(test.result.Info); streamErr != nil { if err := env.streamRunning(t.result.Name); err != nil {
return streamErr return err
} }
} t.result.Status = release.TestRun_RUNNING
resourceCreated := true
if err := env.createTestPod(t); err != nil {
resourceCreated = false
if streamErr := env.streamError(t.result.Info); streamErr != nil {
return err
} }
}
if resourceCreated && resourceCleanExit { resourceCleanExit := true
if err := test.assignTestResult(status); err != nil { status := v1.PodUnknown
return err if resourceCreated {
status, err = env.getTestPodStatus(test)
if err != nil {
resourceCleanExit = false
if streamErr := env.streamError(test.result.Info); streamErr != nil {
return streamErr
} }
}
}
if err := env.streamResult(test.result); err != nil { if resourceCreated && resourceCleanExit {
return err if err := t.assignTestResult(status); err != nil {
} return err
} }
test.result.CompletedAt = timeconv.Now() if err := env.streamResult(t.result); err != nil {
ts.Results = append(ts.Results, test.result) return err
}
} }
ts.CompletedAt = timeconv.Now() t.result.CompletedAt = timeconv.Now()
return nil return nil
} }

Loading…
Cancel
Save