cmd/govulncheck: test the command directly

Add a test that builds govulncheck and compares its output to a golden.

This uses the github.com/google/go-cmdtest package, which makes it easy
to do that.

Move the buildtest package out of vulncheck/internal so cmd/govulncheck
can use it, and fix a bug when GoBuild is passed ".".

Change-Id: I2e216f1980cfe0548e7231531bd68b2996142917
Reviewed-on: https://go-review.googlesource.com/c/vuln/+/399115
Run-TryBot: Jonathan Amsterdam <jba@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Zvonimir Pavlinovic <zpavlinovic@google.com>
8 files changed
tree: eaa396ccd14438da6847b27f24f08083d68ea6b3
  1. client/
  2. cmd/
  3. devtools/
  4. doc/
  5. internal/
  6. osv/
  7. vulncheck/
  8. .gitignore
  9. all_test.go
  10. AUTHORS
  11. checks.bash
  12. CONTRIBUTING.md
  13. CONTRIBUTORS
  14. go.mod
  15. go.sum
  16. LICENSE
  17. PATENTS
  18. README.md
  19. tools_test.go
README.md

Go Vulnerability Management

Go Reference

This repository contains the following:

  • Package client: a client for interacting with the Go vulnerability database
  • Package vulncheck: an API for detecting vulnerabilities in Go packages
  • Command govulncheck: a CLI for detecting vulnerabilities in Go packages

The code in this repository is under active development and not to be considered stable.

License

Unless otherwise noted, the Go source files are distributed under the BSD-style license found in the LICENSE file.

Database entries available at https://vuln.go.dev are distributed under the terms of the CC-BY 4.0 license.