Jiri Simsa | 1f97e1f | 2014-05-28 17:32:47 -0700 | [diff] [blame] | 1 | package exec |
| 2 | |
| 3 | import ( |
| 4 | "testing" |
| 5 | ) |
| 6 | |
| 7 | func TestEnv(t *testing.T) { |
| 8 | env := make([]string, 0) |
Jiri Simsa | 70c3205 | 2014-06-18 11:38:21 -0700 | [diff] [blame] | 9 | env = Setenv(env, "NAME", "VALUE1") |
Jiri Simsa | 1f97e1f | 2014-05-28 17:32:47 -0700 | [diff] [blame] | 10 | if expected, got := 1, len(env); expected != got { |
| 11 | t.Fatalf("Unexpected length of environment variable slice: expected %d, got %d", expected, got) |
| 12 | } |
| 13 | if expected, got := "NAME=VALUE1", env[0]; expected != got { |
| 14 | t.Fatalf("Unexpected element in the environment variable slice: expected %d, got %d", expected, got) |
| 15 | } |
Jiri Simsa | 70c3205 | 2014-06-18 11:38:21 -0700 | [diff] [blame] | 16 | env = Setenv(env, "NAME", "VALUE2") |
Jiri Simsa | 1f97e1f | 2014-05-28 17:32:47 -0700 | [diff] [blame] | 17 | if expected, got := 1, len(env); expected != got { |
| 18 | t.Fatalf("Unexpected length of environment variable slice: expected %d, got %d", expected, got) |
| 19 | } |
| 20 | if expected, got := "NAME=VALUE2", env[0]; expected != got { |
| 21 | t.Fatalf("Unexpected element in the environment variable slice: expected %d, got %d", expected, got) |
| 22 | } |
Jiri Simsa | 70c3205 | 2014-06-18 11:38:21 -0700 | [diff] [blame] | 23 | value, err := Getenv(env, "NAME") |
Jiri Simsa | 1f97e1f | 2014-05-28 17:32:47 -0700 | [diff] [blame] | 24 | if err != nil { |
| 25 | t.Fatalf("Unexpected error when looking up environment variable value: %v", err) |
| 26 | } |
| 27 | if expected, got := "VALUE2", value; expected != got { |
| 28 | t.Fatalf("Unexpected value of an environment variable: expected %d, got %d", expected, got) |
| 29 | } |
Jiri Simsa | 70c3205 | 2014-06-18 11:38:21 -0700 | [diff] [blame] | 30 | value, err = Getenv(env, "NONAME") |
Jiri Simsa | 1f97e1f | 2014-05-28 17:32:47 -0700 | [diff] [blame] | 31 | if err == nil { |
| 32 | t.Fatalf("Expected error when looking up environment variable value, got none", value) |
| 33 | } |
| 34 | } |