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

     1  //go:build unit
     2  // +build unit
     3  
     4  package piperutils
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/stretchr/testify/assert"
    10  )
    11  
    12  func TestProjectWithOnlyMtaFile(t *testing.T) {
    13  	projectStructure := ProjectStructure{directory: "testdata/mta"}
    14  	resultMta := projectStructure.UsesMta()
    15  	assert.True(t, resultMta)
    16  	resultPom := projectStructure.UsesMaven()
    17  	assert.False(t, resultPom)
    18  	resultNpm := projectStructure.UsesNpm()
    19  	assert.False(t, resultNpm)
    20  }
    21  
    22  func TestProjectWithOnlyPomFile(t *testing.T) {
    23  	projectStructure := ProjectStructure{directory: "testdata/maven"}
    24  	resultMta := projectStructure.UsesMta()
    25  	assert.False(t, resultMta)
    26  	resultPom := projectStructure.UsesMaven()
    27  	assert.True(t, resultPom)
    28  	resultNpm := projectStructure.UsesNpm()
    29  	assert.False(t, resultNpm)
    30  }
    31  
    32  func TestProjectWithOnlyNpmFile(t *testing.T) {
    33  	projectStructure := ProjectStructure{directory: "testdata/npm"}
    34  	resultMta := projectStructure.UsesMta()
    35  	assert.False(t, resultMta)
    36  	resultPom := projectStructure.UsesMaven()
    37  	assert.False(t, resultPom)
    38  	resultNpm := projectStructure.UsesNpm()
    39  	assert.True(t, resultNpm)
    40  }
    41  
    42  func TestDirectryParameterIsEmptyAndNoProjectFilesAreInIt(t *testing.T) {
    43  	projectStructure := ProjectStructure{}
    44  	resultMta := projectStructure.UsesMta()
    45  	assert.False(t, resultMta)
    46  	resultPom := projectStructure.UsesMaven()
    47  	assert.False(t, resultPom)
    48  	resultNpm := projectStructure.UsesNpm()
    49  	assert.False(t, resultNpm)
    50  }