diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-11-25 18:44:36 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-25 18:44:36 +0100 |
commit | 106843999424321dcc6ee7a0d643ad974e841242 (patch) | |
tree | 36f19dfb9477eb9114f6e5beadff2835ef4ddc1c | |
parent | 6a38a4ef70c4513e44774ef1a5d524b9f8cb22af (diff) | |
parent | bd0e822d02d238ad52378600cfbced761abffe97 (diff) |
Merge pull request #25002 from vespa-engine/arnej/minor-cleanup-1
Arnej/minor cleanup 1
-rw-r--r-- | client/go/jvm/options.go | 8 | ||||
-rw-r--r-- | client/go/prog/spec_env.go | 6 | ||||
-rw-r--r-- | client/go/prog/spec_test.go | 24 |
3 files changed, 32 insertions, 6 deletions
diff --git a/client/go/jvm/options.go b/client/go/jvm/options.go index dae66690966..deb842936ba 100644 --- a/client/go/jvm/options.go +++ b/client/go/jvm/options.go @@ -18,7 +18,6 @@ type Options struct { container Container classPath []string jvmArgs []string - present map[string]bool mainClass string fixSpec util.FixSpec } @@ -35,15 +34,16 @@ func NewOptions(c Container) *Options { container: c, classPath: make([]string, 0, 10), jvmArgs: make([]string, 0, 100), - present: make(map[string]bool), mainClass: DEFAULT_MAIN_CLASS, fixSpec: fixSpec, } } func (opts *Options) AddOption(arg string) { - if present := opts.present[arg]; present { - return + for _, old := range opts.jvmArgs { + if arg == old { + return + } } opts.AppendOption(arg) } diff --git a/client/go/prog/spec_env.go b/client/go/prog/spec_env.go index b40b3f172fd..748b262b0d4 100644 --- a/client/go/prog/spec_env.go +++ b/client/go/prog/spec_env.go @@ -41,9 +41,11 @@ func (spec *Spec) EffectiveEnv() []string { trace.Trace("add to environment:", k, "=", v) envMap[k] = k + "=" + v } - envVec := make([]string, 0, len(envMap)) + envVec := make([]string, len(envMap)) + idx := 0 for _, val := range envMap { - envVec = append(envVec, val) + envVec[idx] = val + idx++ } return envVec } diff --git a/client/go/prog/spec_test.go b/client/go/prog/spec_test.go index a4002051a86..0e5d3fb50ba 100644 --- a/client/go/prog/spec_test.go +++ b/client/go/prog/spec_test.go @@ -37,3 +37,27 @@ func TestProgSpec(t *testing.T) { s = spec.valueFromListString("one=1 all=123") assert.Equal(t, "123", s) } + +type strVec []string + +func (v strVec) contains(w string) bool { + for _, val := range v { + if w == val { + return true + } + } + return false +} + +func TestProgSpecEnv(t *testing.T) { + spec := NewSpec([]string{"/opt/vespa/bin/foobar"}) + t.Setenv("FOO", "old foo") + t.Setenv("BAR", "bar") + spec.Setenv("FOO", "foo") + assert.Equal(t, "foo", spec.Getenv("FOO")) + assert.Equal(t, "bar", spec.Getenv("BAR")) + envv := strVec(spec.EffectiveEnv()) + assert.True(t, envv.contains("FOO=foo")) + assert.True(t, envv.contains("BAR=bar")) + assert.False(t, envv.contains("FOO=old foo")) +} |