#28 Return GroovyScriptExecutionFailed error

This commit is contained in:
Tomasz Sęk 2019-06-30 22:57:54 +02:00
parent 1930c04b72
commit 4e302c66a1
No known key found for this signature in database
GPG Key ID: DC356D23F6A644D0
2 changed files with 9 additions and 2 deletions

View File

@ -10,6 +10,13 @@ import (
"github.com/pkg/errors"
)
// GroovyScriptExecutionFailed is custom error type which indicates passed groovy script is invalid
type GroovyScriptExecutionFailed struct{}
func (e GroovyScriptExecutionFailed) Error() string {
return "script execution failed"
}
func (jenkins *jenkins) ExecuteScript(script string) (string, error) {
now := time.Now().Unix()
verifier := fmt.Sprintf("verifier-%d", now)
@ -38,7 +45,7 @@ func (jenkins *jenkins) executeScript(script string, verifier string) (string, e
}
if !strings.Contains(output, verifier) {
return output, errors.Errorf("script execution failed, logs '%s'", output)
return output, &GroovyScriptExecutionFailed{}
}
return output, nil

View File

@ -62,7 +62,7 @@ func Test_ExecuteScript(t *testing.T) {
script := "some groovy code"
logs, err := jenkinsClient.executeScript(script, verifier)
assert.EqualError(t, err, "script execution failed, logs 'some exception stack trace without verifier'", logs)
assert.EqualError(t, err, "script execution failed", logs)
assert.Equal(t, response, logs)
})
t.Run("throw 500", func(t *testing.T) {