github.com/osievert/jfrog-cli-core@v1.2.7/artifactory/commands/buildinfo/publish_test.go (about)

     1  package buildinfo
     2  
     3  import (
     4  	"reflect"
     5  	"testing"
     6  
     7  	"github.com/jfrog/jfrog-client-go/artifactory/buildinfo"
     8  )
     9  
    10  var envVars = map[string]string{"KeY": "key_val", "INClUdEd_VaR": "included_var", "EXCLUDED_pASSwoRd_var": "excluded_var"}
    11  
    12  func TestIncludeAllPattern(t *testing.T) {
    13  	conf := buildinfo.Configuration{EnvInclude: "*"}
    14  	includeFilter := conf.IncludeFilter()
    15  	filteredKeys, err := includeFilter(envVars)
    16  	if err != nil {
    17  		t.Error(err)
    18  	}
    19  
    20  	equals := reflect.DeepEqual(envVars, filteredKeys)
    21  	if !equals {
    22  		t.Error("expected:", envVars, "got:", filteredKeys)
    23  	}
    24  }
    25  
    26  func TestIncludePartial(t *testing.T) {
    27  	conf := buildinfo.Configuration{EnvInclude: "*ED_V*;EXC*SwoRd_var"}
    28  	includeFilter := conf.IncludeFilter()
    29  	filteredKeys, err := includeFilter(envVars)
    30  	if err != nil {
    31  		t.Error(err)
    32  	}
    33  
    34  	expected := map[string]string{"INClUdEd_VaR": "included_var", "EXCLUDED_pASSwoRd_var": "excluded_var"}
    35  	equals := reflect.DeepEqual(expected, filteredKeys)
    36  	if !equals {
    37  		t.Error("expected:", expected, "got:", filteredKeys)
    38  	}
    39  }
    40  
    41  func TestIncludePartialIgnoreCase(t *testing.T) {
    42  	conf := buildinfo.Configuration{EnvInclude: "*Ed_v*"}
    43  	includeFilter := conf.IncludeFilter()
    44  	filteredKeys, err := includeFilter(envVars)
    45  	if err != nil {
    46  		t.Error(err)
    47  	}
    48  
    49  	expected := map[string]string{"INClUdEd_VaR": "included_var"}
    50  	equals := reflect.DeepEqual(expected, filteredKeys)
    51  	if !equals {
    52  		t.Error("expected:", expected, "got:", filteredKeys)
    53  	}
    54  }
    55  
    56  func TestExcludePasswordsPattern(t *testing.T) {
    57  	conf := buildinfo.Configuration{EnvExclude: "*paSSword*;*PsW*;*seCrEt*;*kEy*;*token*"}
    58  	excludeFilter := conf.ExcludeFilter()
    59  	filteredKeys, err := excludeFilter(envVars)
    60  	if err != nil {
    61  		t.Error(err)
    62  	}
    63  
    64  	expected := map[string]string{"INClUdEd_VaR": "included_var"}
    65  	equals := reflect.DeepEqual(expected, filteredKeys)
    66  	if !equals {
    67  		t.Error("expected:", expected, "got:", filteredKeys)
    68  	}
    69  }