#####
# Test of govulncheck help output
$ govulncheck -h
Govulncheck reports known vulnerabilities in dependencies.

Usage:

	govulncheck [flags] [patterns]
	govulncheck -mode=binary [flags] [binary]

  -C dir
    	change to dir before running govulncheck
  -db url
    	vulnerability database url (default "https://vuln.go.dev")
  -format value
    	specify format output
    	The supported values are 'text', 'json', and 'sarif' (default 'text')
  -json
    	output JSON (Go compatible legacy flag, see format flag)
  -mode value
    	supports 'source', 'binary', and 'extract' (default 'source')
  -scan value
    	set the scanning level desired, one of 'module', 'package', or 'symbol' (default 'symbol')
  -show list
    	enable display of additional information specified by the comma separated list
    	The supported values are 'traces','color', 'version', and 'verbose'
  -tags list
    	comma-separated list of build tags
  -test
    	analyze test files (only valid for source mode, default false)
  -version
    	print the version information

For details, see https://pkg.go.dev/golang.org/x/vuln/cmd/govulncheck.

#####
# Not scanning anything.
$ govulncheck
No vulnerabilities found.

#####
# Reporting version without scanning anything.
$ govulncheck -version
Go: go1.18
Scanner: govulncheck@v1.0.0
DB: testdata/vulndb-v1
DB updated: 2023-04-03 15:57:51 +0000 UTC

No vulnerabilities found.
