blob: edb1a1cbcc9ed07655ae1ed4691252477069d211 [file] [log] [blame]
// Copyright 2022 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package internal
import (
"testing"
"golang.org/x/vuln/internal/testenv"
)
func TestGoEnv(t *testing.T) {
testenv.NeedsGoEnv(t)
for _, key := range []string{"GOVERSION", "GOROOT", "GOPATH", "GOMODCACHE"} {
if val, err := GoEnv(key); val == "" {
t.Errorf("want something for go env %s; got nothing", key)
} else if err != nil {
t.Errorf("unexpected error for go env %s: %v", key, err)
}
}
}
func TestGoEnvNonVariable(t *testing.T) {
testenv.NeedsGoEnv(t)
key := "NOT_A_GO_ENV_VARIABLE"
if val, err := GoEnv(key); val != "" {
t.Errorf("expected nothing for go env %s; got %s", key, val)
} else if err != nil {
t.Errorf("unexpected error for go env %s: %v", key, err)
}
}
func TestGoEnvErr(t *testing.T) {
testenv.NeedsGoEnv(t)
key := "--not-a-flag"
if val, err := GoEnv(key); err == nil {
t.Errorf("wanted an error from go env %s; got value %q", key, val)
}
}