mirror of
https://github.com/wailsapp/wails.git
synced 2025-05-02 07:09:54 +08:00
68 lines
1.7 KiB
Go
68 lines
1.7 KiB
Go
package shell
|
|
|
|
import "testing"
|
|
|
|
func TestUpdateEnv(t *testing.T) {
|
|
|
|
env := []string{"one=1", "two=a=b", "three="}
|
|
newEnv := UpsertEnv(env, "two", func(v string) string {
|
|
return v + "+added"
|
|
})
|
|
newEnv = UpsertEnv(newEnv, "newVar", func(v string) string {
|
|
return "added"
|
|
})
|
|
newEnv = UpsertEnv(newEnv, "three", func(v string) string {
|
|
return "3"
|
|
})
|
|
newEnv = UpsertEnv(newEnv, "GOARCH", func(v string) string {
|
|
return "amd64"
|
|
})
|
|
|
|
if len(newEnv) != 5 {
|
|
t.Errorf("expected: 5, got: %d", len(newEnv))
|
|
}
|
|
if newEnv[1] != "two=a=b+added" {
|
|
t.Errorf("expected: \"two=a=b+added\", got: %q", newEnv[1])
|
|
}
|
|
if newEnv[2] != "three=3" {
|
|
t.Errorf("expected: \"three=3\", got: %q", newEnv[2])
|
|
}
|
|
if newEnv[3] != "newVar=added" {
|
|
t.Errorf("expected: \"newVar=added\", got: %q", newEnv[3])
|
|
}
|
|
if newEnv[4] != "GOARCH=amd64" {
|
|
t.Errorf("expected: \"newVar=added\", got: %q", newEnv[4])
|
|
}
|
|
}
|
|
|
|
func TestSetEnv(t *testing.T) {
|
|
env := []string{"one=1", "two=a=b", "three="}
|
|
newEnv := SetEnv(env, "two", "set")
|
|
newEnv = SetEnv(newEnv, "newVar", "added")
|
|
|
|
if len(newEnv) != 4 {
|
|
t.Errorf("expected: 4, got: %d", len(newEnv))
|
|
}
|
|
if newEnv[1] != "two=set" {
|
|
t.Errorf("expected: \"two=set\", got: %q", newEnv[1])
|
|
}
|
|
if newEnv[3] != "newVar=added" {
|
|
t.Errorf("expected: \"newVar=added\", got: %q", newEnv[3])
|
|
}
|
|
}
|
|
|
|
func TestRemoveEnv(t *testing.T) {
|
|
env := []string{"one=1", "two=a=b", "three=3"}
|
|
newEnv := RemoveEnv(env, "two")
|
|
|
|
if len(newEnv) != 2 {
|
|
t.Errorf("expected: 2, got: %d", len(newEnv))
|
|
}
|
|
if newEnv[0] != "one=1" {
|
|
t.Errorf("expected: \"one=1\", got: %q", newEnv[1])
|
|
}
|
|
if newEnv[1] != "three=3" {
|
|
t.Errorf("expected: \"three=3\", got: %q", newEnv[3])
|
|
}
|
|
}
|