Skip to content

Commit

Permalink
Add some builder getEnv tests
Browse files Browse the repository at this point in the history
In particular I want to make sure that calling getEnv() when the same
var name appears more than once in the env list that we only pick up
the first one.  PR #15182 counts on this

Signed-off-by: Doug Davis <dug@us.ibm.com>
  • Loading branch information
Doug Davis committed Aug 22, 2015
1 parent efabc8e commit eeeae2c
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions builder/shell_parser_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,3 +49,45 @@ func TestShellParser(t *testing.T) {
}
}
}

func TestGetEnv(t *testing.T) {
sw := &shellWord{
word: "",
envs: nil,
pos: 0,
}

sw.envs = []string{}
if sw.getEnv("foo") != "" {
t.Fatalf("2 - 'foo' should map to ''")
}

sw.envs = []string{"foo"}
if sw.getEnv("foo") != "" {
t.Fatalf("3 - 'foo' should map to ''")
}

sw.envs = []string{"foo="}
if sw.getEnv("foo") != "" {
t.Fatalf("4 - 'foo' should map to ''")
}

sw.envs = []string{"foo=bar"}
if sw.getEnv("foo") != "bar" {
t.Fatalf("5 - 'foo' should map to 'bar'")
}

sw.envs = []string{"foo=bar", "car=hat"}
if sw.getEnv("foo") != "bar" {
t.Fatalf("6 - 'foo' should map to 'bar'")
}
if sw.getEnv("car") != "hat" {
t.Fatalf("7 - 'car' should map to 'hat'")
}

// Make sure we grab the first 'car' in the list
sw.envs = []string{"foo=bar", "car=hat", "car=bike"}
if sw.getEnv("car") != "hat" {
t.Fatalf("8 - 'car' should map to 'hat'")
}
}

0 comments on commit eeeae2c

Please sign in to comment.