github.com/tiagovtristao/plz@v13.4.0+incompatible/src/core/build_env_test.go (about) 1 package core 2 3 import ( 4 "os" 5 "testing" 6 7 "github.com/stretchr/testify/assert" 8 ) 9 10 func TestReplaceEnvironment(t *testing.T) { 11 env := BuildEnv{ 12 "TMP_DIR=/home/user/please/src/core", 13 "PKG=src/core", 14 "SRCS=core.go build_env.go", 15 } 16 assert.Equal(t, 17 "/home/user/please/src/core src/core core.go build_env.go", 18 os.Expand("$TMP_DIR ${PKG} ${SRCS}", env.ReplaceEnvironment)) 19 assert.Equal(t, "", os.Expand("$WIBBLE", env.ReplaceEnvironment)) 20 } 21 22 func TestReplace(t *testing.T) { 23 env := BuildEnv{ 24 "TMP_DIR=/home/user/please/src/core", 25 "PKG=src/core", 26 "SRCS=core.go build_env.go", 27 } 28 env.Replace("PKG", "src/test") 29 assert.EqualValues(t, BuildEnv{ 30 "TMP_DIR=/home/user/please/src/core", 31 "PKG=src/test", 32 "SRCS=core.go build_env.go", 33 }, env) 34 } 35 36 func TestRedact(t *testing.T) { 37 env := BuildEnv{ 38 "WHATEVER=12345", 39 "GPG_PASSWORD=54321", 40 "ULTIMATE_MEGASECRET=42", 41 } 42 expected := BuildEnv{ 43 "WHATEVER=12345", 44 "GPG_PASSWORD=************", 45 "ULTIMATE_MEGASECRET=************", 46 } 47 assert.EqualValues(t, expected, env.Redacted()) 48 } 49 50 func TestString(t *testing.T) { 51 env := BuildEnv{ 52 "A=B", 53 "C=D", 54 } 55 assert.EqualValues(t, "A=B\nC=D", env.String()) 56 }