1
0
mirror of https://github.com/SAP/jenkins-library.git synced 2025-03-05 15:15:44 +02:00
sap-jenkins-library/pkg/abap/build/connector_test.go
rosemarieB 000e3ab4a9
Add abap source client to generic build step (#3834)
* enable build without values

* add sap-client as option

* use function from /net/url to add parameters

Co-authored-by: tiloKo <70266685+tiloKo@users.noreply.github.com>
2022-07-07 08:44:51 +02:00

59 lines
1.5 KiB
Go

package build
import (
"net/url"
"testing"
"time"
"github.com/stretchr/testify/assert"
)
func TestCreateUrl(t *testing.T) {
//arrange global
conn := new(Connector)
conn.MaxRuntime = time.Duration(1 * time.Second)
conn.PollingInterval = time.Duration(1 * time.Microsecond)
conn.Baseurl = "/BUILD/CORE_SRV"
t.Run("Zero Parameter", func(t *testing.T) {
//act
url := conn.createUrl("/builds('123456789')")
//assert
assert.Equal(t, "/BUILD/CORE_SRV/builds('123456789')", url)
})
t.Run("One Parameter", func(t *testing.T) {
//arange
conn.Parameters = url.Values{}
abapSourceClient := "001"
conn.Parameters.Add("sap-client", abapSourceClient)
//act
url := conn.createUrl("/builds('123456789')")
//assert
assert.Equal(t, "/BUILD/CORE_SRV/builds('123456789')?sap-client=001", url)
})
t.Run("Two Parameters", func(t *testing.T) {
//arrange
conn.Parameters = url.Values{}
conn.Parameters.Add("sap-client", "001")
conn.Parameters.Add("format", "json")
//act
url := conn.createUrl("/builds('123456789')")
//assert
assert.Equal(t, "/BUILD/CORE_SRV/builds('123456789')?format=json&sap-client=001", url)
})
t.Run("Three Parameters", func(t *testing.T) {
//arrange
conn.Parameters = url.Values{}
conn.Parameters.Add("sap-client", "001")
conn.Parameters.Add("format", "json")
conn.Parameters.Add("top", "2")
//act
url := conn.createUrl("/builds('123456789')")
//assert
assert.Equal(t, "/BUILD/CORE_SRV/builds('123456789')?format=json&sap-client=001&top=2", url)
})
}