mirror of
https://github.com/chenasraf/sofmani.git
synced 2026-05-18 01:29:02 +00:00
61 lines
1.7 KiB
Go
61 lines
1.7 KiB
Go
package utils
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestResolveEnvPaths(t *testing.T) {
|
|
envs := [][]string{
|
|
{"PATH=/usr/bin", "HOME=/home/user"},
|
|
{"GOPATH=/go", "GOROOT=/usr/local/go"},
|
|
}
|
|
expected := []string{
|
|
"PATH=/usr/bin",
|
|
"HOME=/home/user",
|
|
"GOPATH=/go",
|
|
"GOROOT=/usr/local/go",
|
|
}
|
|
result := ResolveEnvPaths(envs...)
|
|
assert.ElementsMatch(t, expected, result)
|
|
}
|
|
|
|
func TestCombineEnv(t *testing.T) {
|
|
env1 := &[]string{"KEY1=value1", "KEY2=value2"}
|
|
env2 := &[]string{"KEY2=new_value2", "KEY3=value3"}
|
|
expected := []string{"KEY1=value1", "KEY2=new_value2", "KEY3=value3"}
|
|
result := CombineEnv(env1, env2)
|
|
assert.ElementsMatch(t, expected, result)
|
|
}
|
|
|
|
func TestCombineEnvMaps(t *testing.T) {
|
|
env1 := &map[string]string{"KEY1": "value1", "KEY2": "value2"}
|
|
env2 := &map[string]string{"KEY2": "new_value2", "KEY3": "value3"}
|
|
expected := map[string]string{"KEY1": "value1", "KEY2": "new_value2", "KEY3": "value3"}
|
|
result := CombineEnvMaps(env1, env2)
|
|
assert.Equal(t, expected, result)
|
|
}
|
|
|
|
func TestEnvSliceAsMap(t *testing.T) {
|
|
env := []string{"KEY1=value1", "KEY2=value2"}
|
|
expected := map[string]string{"KEY1": "value1", "KEY2": "value2"}
|
|
result := EnvSliceAsMap(env)
|
|
assert.Equal(t, expected, result)
|
|
}
|
|
|
|
func TestEnvMapAsSlice(t *testing.T) {
|
|
env := map[string]string{"KEY1": "value1", "KEY2": "value2"}
|
|
expected := []string{"KEY1=value1", "KEY2=value2"}
|
|
result := EnvMapAsSlice(env)
|
|
assert.ElementsMatch(t, expected, result)
|
|
}
|
|
|
|
func TestMergeEnvs(t *testing.T) {
|
|
source := &[]string{"KEY1=value1", "KEY2=value2"}
|
|
target := []string{"KEY2=new_value2", "KEY3=value3"}
|
|
expected := []string{"KEY1=value1", "KEY2=value2", "KEY3=value3"}
|
|
result := mergeEnvs(source, target)
|
|
assert.ElementsMatch(t, expected, result)
|
|
}
|