github.com/ouraigua/jenkins-library@v0.0.0-20231028010029-fbeaf2f3aa9b/pkg/orchestrator/unknownOrchestrator_test.go (about)

     1  //go:build unit
     2  // +build unit
     3  
     4  package orchestrator
     5  
     6  import (
     7  	"os"
     8  	"testing"
     9  	"time"
    10  
    11  	"github.com/stretchr/testify/assert"
    12  )
    13  
    14  func TestUnknownOrchestrator(t *testing.T) {
    15  	t.Run("BranchBuild", func(t *testing.T) {
    16  		defer resetEnv(os.Environ())
    17  		os.Clearenv()
    18  
    19  		p, _ := NewOrchestratorSpecificConfigProvider()
    20  
    21  		assert.False(t, p.IsPullRequest())
    22  		assert.Equal(t, "n/a", p.GetBuildURL())
    23  		assert.Equal(t, "n/a", p.GetBranch())
    24  		assert.Equal(t, "n/a", p.GetCommit())
    25  		assert.Equal(t, "n/a", p.GetRepoURL())
    26  		assert.Equal(t, "Unknown", p.OrchestratorType())
    27  	})
    28  
    29  	t.Run("PR", func(t *testing.T) {
    30  		defer resetEnv(os.Environ())
    31  		os.Clearenv()
    32  
    33  		p := UnknownOrchestratorConfigProvider{}
    34  		c := p.GetPullRequestConfig()
    35  
    36  		assert.False(t, p.IsPullRequest())
    37  		assert.Equal(t, "n/a", c.Branch)
    38  		assert.Equal(t, "n/a", c.Base)
    39  		assert.Equal(t, "n/a", c.Key)
    40  	})
    41  
    42  	t.Run("env variables", func(t *testing.T) {
    43  		defer resetEnv(os.Environ())
    44  		os.Clearenv()
    45  
    46  		p := UnknownOrchestratorConfigProvider{}
    47  
    48  		assert.Equal(t, "n/a", p.OrchestratorVersion())
    49  		assert.Equal(t, "n/a", p.GetBuildID())
    50  		assert.Equal(t, "n/a", p.GetJobName())
    51  		assert.Equal(t, "Unknown", p.OrchestratorType())
    52  		assert.Equal(t, time.Time{}.UTC(), p.GetPipelineStartTime())
    53  		assert.Equal(t, "FAILURE", p.GetBuildStatus())
    54  		assert.Equal(t, "n/a", p.GetRepoURL())
    55  		assert.Equal(t, "n/a", p.GetBuildURL())
    56  		assert.Equal(t, "n/a", p.GetStageName())
    57  		log, err := p.GetLog()
    58  		assert.Equal(t, []byte{}, log)
    59  		assert.Equal(t, nil, err)
    60  	})
    61  }