github.com/ouraigua/jenkins-library@v0.0.0-20231028010029-fbeaf2f3aa9b/pkg/abap/build/connector_test.go (about)

     1  //go:build unit
     2  // +build unit
     3  
     4  package build
     5  
     6  import (
     7  	"net/url"
     8  	"testing"
     9  	"time"
    10  
    11  	"github.com/stretchr/testify/assert"
    12  )
    13  
    14  func TestCreateUrl(t *testing.T) {
    15  	//arrange global
    16  	conn := new(Connector)
    17  	conn.MaxRuntime = time.Duration(1 * time.Second)
    18  	conn.PollingInterval = time.Duration(1 * time.Microsecond)
    19  	conn.Baseurl = "/BUILD/CORE_SRV"
    20  	t.Run("Zero Parameter", func(t *testing.T) {
    21  		//act
    22  		url := conn.createUrl("/builds('123456789')")
    23  		//assert
    24  		assert.Equal(t, "/BUILD/CORE_SRV/builds('123456789')", url)
    25  	})
    26  	t.Run("One Parameter", func(t *testing.T) {
    27  		//arange
    28  		conn.Parameters = url.Values{}
    29  		abapSourceClient := "001"
    30  		conn.Parameters.Add("sap-client", abapSourceClient)
    31  		//act
    32  		url := conn.createUrl("/builds('123456789')")
    33  
    34  		//assert
    35  		assert.Equal(t, "/BUILD/CORE_SRV/builds('123456789')?sap-client=001", url)
    36  	})
    37  	t.Run("Two Parameters", func(t *testing.T) {
    38  		//arrange
    39  		conn.Parameters = url.Values{}
    40  		conn.Parameters.Add("sap-client", "001")
    41  		conn.Parameters.Add("format", "json")
    42  		//act
    43  		url := conn.createUrl("/builds('123456789')")
    44  
    45  		//assert
    46  		assert.Equal(t, "/BUILD/CORE_SRV/builds('123456789')?format=json&sap-client=001", url)
    47  	})
    48  	t.Run("Three Parameters", func(t *testing.T) {
    49  		//arrange
    50  		conn.Parameters = url.Values{}
    51  		conn.Parameters.Add("sap-client", "001")
    52  		conn.Parameters.Add("format", "json")
    53  		conn.Parameters.Add("top", "2")
    54  
    55  		//act
    56  		url := conn.createUrl("/builds('123456789')")
    57  
    58  		//assert
    59  		assert.Equal(t, "/BUILD/CORE_SRV/builds('123456789')?format=json&sap-client=001&top=2", url)
    60  	})
    61  }