mirror of
https://github.com/SAP/jenkins-library.git
synced 2024-12-14 11:03:09 +02:00
63 lines
1.6 KiB
Go
63 lines
1.6 KiB
Go
|
package cmd
|
||
|
|
||
|
import (
|
||
|
"github.com/SAP/jenkins-library/pkg/mock"
|
||
|
"github.com/stretchr/testify/assert"
|
||
|
"testing"
|
||
|
)
|
||
|
|
||
|
type integrationArtifactUnDeployMockUtils struct {
|
||
|
*mock.ExecMockRunner
|
||
|
*mock.FilesMock
|
||
|
}
|
||
|
|
||
|
func TestRunIntegrationArtifactUnDeploy(t *testing.T) {
|
||
|
t.Parallel()
|
||
|
|
||
|
t.Run("Successful undeploy of integration flow test", func(t *testing.T) {
|
||
|
|
||
|
apiServiceKey := `{
|
||
|
"oauth": {
|
||
|
"url": "https://demo",
|
||
|
"clientid": "demouser",
|
||
|
"clientsecret": "******",
|
||
|
"tokenurl": "https://demo/oauth/token"
|
||
|
}
|
||
|
}`
|
||
|
config := integrationArtifactUnDeployOptions{
|
||
|
APIServiceKey: apiServiceKey,
|
||
|
IntegrationFlowID: "flow1",
|
||
|
}
|
||
|
httpClient := httpMockCpis{CPIFunction: "PositiveAndUnDeployIntegrationDesigntimeArtifact", ResponseBody: ``, TestType: "Positive"}
|
||
|
|
||
|
// test
|
||
|
err := runIntegrationArtifactUnDeploy(&config, nil, &httpClient)
|
||
|
|
||
|
// assert
|
||
|
assert.NoError(t, err)
|
||
|
})
|
||
|
|
||
|
t.Run("Failed undeploy of integration flow test", func(t *testing.T) {
|
||
|
apiServiceKey := `{
|
||
|
"oauth": {
|
||
|
"url": "https://demo",
|
||
|
"clientid": "demouser",
|
||
|
"clientsecret": "******",
|
||
|
"tokenurl": "https://demo/oauth/token"
|
||
|
}
|
||
|
}`
|
||
|
config := integrationArtifactUnDeployOptions{
|
||
|
APIServiceKey: apiServiceKey,
|
||
|
IntegrationFlowID: "flow1",
|
||
|
}
|
||
|
|
||
|
httpClient := httpMockCpis{CPIFunction: "FailedIntegrationRuntimeArtifactUnDeployment", ResponseBody: ``, TestType: "Negative"}
|
||
|
|
||
|
// test
|
||
|
err := runIntegrationArtifactUnDeploy(&config, nil, &httpClient)
|
||
|
|
||
|
// assert
|
||
|
assert.EqualError(t, err, "integration flow undeployment failed, response Status code: 400")
|
||
|
})
|
||
|
}
|