You've already forked sap-jenkins-library
mirror of
https://github.com/SAP/jenkins-library.git
synced 2025-07-01 00:54:55 +02:00
Run npm scripts in virtual frame buffer and extend command.go to run executable asynchronously (#1669)
Co-authored-by: Stephan Aßmus <stephan.assmus@sap.com> Co-authored-by: Florian Wilhelm <florian.wilhelm02@sap.com>
This commit is contained in:
@ -129,6 +129,29 @@ func TestNpmExecuteScripts(t *testing.T) {
|
||||
assert.Equal(t, mock.ExecCall{Exec: "npm", Params: []string{"run-script", "foo", "--if-present"}}, utils.execRunner.Calls[3])
|
||||
assert.Equal(t, mock.ExecCall{Exec: "npm", Params: []string{"run-script", "bar", "--if-present"}}, utils.execRunner.Calls[4])
|
||||
})
|
||||
|
||||
t.Run("Call run-scripts with virtual frame buffer", func(t *testing.T) {
|
||||
utils := newNpmExecuteScriptsMockUtilsBundle()
|
||||
utils.files["package.json"] = []byte("{\"scripts\": { \"foo\": \"\" } }")
|
||||
options := npmExecuteScriptsOptions{}
|
||||
options.Install = false
|
||||
options.RunScripts = []string{"foo"}
|
||||
options.VirtualFrameBuffer = true
|
||||
|
||||
err := runNpmExecuteScripts(&utils, &options)
|
||||
|
||||
assert.Contains(t, utils.execRunner.Env, "DISPLAY=:99")
|
||||
assert.NoError(t, err)
|
||||
if assert.Len(t, utils.execRunner.Calls, 4) {
|
||||
xvfbCall := utils.execRunner.Calls[0]
|
||||
assert.Equal(t, "Xvfb", xvfbCall.Exec)
|
||||
assert.Equal(t, []string{"-ac", ":99", "-screen", "0", "1280x1024x16"}, xvfbCall.Params)
|
||||
assert.True(t, xvfbCall.Async)
|
||||
assert.True(t, xvfbCall.Execution.Killed)
|
||||
|
||||
assert.Equal(t, mock.ExecCall{Exec: "npm", Params: []string{"run-script", "foo", "--if-present"}}, utils.execRunner.Calls[3])
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
func newNpmExecuteScriptsMockUtilsBundle() npmExecuteScriptsMockUtilsBundle {
|
||||
|
Reference in New Issue
Block a user