github.com/ouraigua/jenkins-library@v0.0.0-20231028010029-fbeaf2f3aa9b/cmd/abapAddonAssemblyKitCheckPV_test.go (about) 1 //go:build unit 2 // +build unit 3 4 package cmd 5 6 import ( 7 "encoding/json" 8 "testing" 9 10 "github.com/SAP/jenkins-library/pkg/abap/aakaas" 11 "github.com/SAP/jenkins-library/pkg/abaputils" 12 "github.com/stretchr/testify/assert" 13 ) 14 15 func TestCheckPVStep(t *testing.T) { 16 var config abapAddonAssemblyKitCheckPVOptions 17 var cpe abapAddonAssemblyKitCheckPVCommonPipelineEnvironment 18 bundle := aakaas.NewAakBundleMock() 19 bundle.SetBody(aakaas.ResponseCheckPV) 20 utils := bundle.GetUtils() 21 config.Username = "dummyUser" 22 config.Password = "dummyPassword" 23 t.Run("step success", func(t *testing.T) { 24 config.AddonDescriptorFileName = "success" 25 err := runAbapAddonAssemblyKitCheckPV(&config, nil, utils, &cpe) 26 assert.NoError(t, err, "Did not expect error") 27 var addonDescriptorFinal abaputils.AddonDescriptor 28 err = json.Unmarshal([]byte(cpe.abap.addonDescriptor), &addonDescriptorFinal) 29 assert.NoError(t, err) 30 assert.Equal(t, "0003", addonDescriptorFinal.AddonVersion) 31 assert.Equal(t, "0002", addonDescriptorFinal.AddonSpsLevel) 32 assert.Equal(t, "0001", addonDescriptorFinal.AddonPatchLevel) 33 }) 34 t.Run("step error - in ReadAddonDescriptor", func(t *testing.T) { 35 config.AddonDescriptorFileName = "failing" 36 err := runAbapAddonAssemblyKitCheckPV(&config, nil, utils, &cpe) 37 assert.Error(t, err, "Did expect error") 38 assert.Equal(t, err.Error(), "error in ReadAddonDescriptor") 39 }) 40 t.Run("step error - in validate", func(t *testing.T) { 41 config.AddonDescriptorFileName = "success" 42 bundle.SetBody("ErrorBody") 43 bundle.SetError("error during validation") 44 err := runAbapAddonAssemblyKitCheckPV(&config, nil, utils, &cpe) 45 assert.Error(t, err, "Did expect error") 46 }) 47 }