github.com/fastly/cli@v1.7.2-0.20240304164155-9d0f1d77c3bf/pkg/env/env_test.go (about) 1 package env 2 3 import ( 4 "runtime" 5 "testing" 6 7 "golang.org/x/exp/slices" 8 ) 9 10 func TestVars(t *testing.T) { 11 tcs := []struct { 12 os string 13 vars map[string]string 14 expected []string 15 }{ 16 { 17 os: "windows", 18 expected: []string{"%HOME%", "%PATH%"}, 19 }, 20 { 21 os: "darwin", 22 expected: []string{"\\$HOME", "\\$PATH"}, 23 }, 24 { 25 os: "linux", 26 expected: []string{"\\$HOME", "\\$PATH"}, 27 }, 28 } 29 for _, tc := range tcs { 30 t.Run(tc.os, func(t *testing.T) { 31 vars := Vars() 32 if runtime.GOOS == tc.os { 33 for _, v := range tc.expected { 34 if !slices.Contains(vars, v) { 35 t.Errorf("expected %s in %v", v, vars) 36 } 37 } 38 } else { 39 t.Skip() 40 } 41 }) 42 } 43 }