github.com/ouraigua/jenkins-library@v0.0.0-20231028010029-fbeaf2f3aa9b/pkg/gcs/targetFolderHandler_test.go (about) 1 //go:build unit 2 // +build unit 3 4 package gcs 5 6 import ( 7 "fmt" 8 "testing" 9 ) 10 11 func TestGetTargetFolder(t *testing.T) { 12 tests := []struct { 13 folderPath string 14 stepResultType string 15 subFolder string 16 expected string 17 }{ 18 {folderPath: "folder/path/", stepResultType: "general", subFolder: "sub/folder", expected: "folder/path/general/sub/folder"}, 19 {folderPath: "folder/path/", subFolder: "sub/folder", expected: "folder/path/sub/folder"}, 20 {folderPath: "folder/path/", stepResultType: "general", expected: "folder/path/general"}, 21 {folderPath: "folder1", stepResultType: "general", subFolder: "folder2/", expected: "folder1/general/folder2"}} 22 23 for key, tt := range tests { 24 t.Run(fmt.Sprintf("Row %v", key+1), func(t *testing.T) { 25 actualTargetFolder := GetTargetFolder(tt.folderPath, tt.stepResultType, tt.subFolder) 26 if actualTargetFolder != tt.expected { 27 t.Errorf("Expected '%v' was '%v'", tt.expected, actualTargetFolder) 28 } 29 }) 30 } 31 }