1
0
mirror of https://github.com/golang/go synced 2024-11-21 22:24:40 -07:00

crypto/internal/fips140deps: fix test for running in FIPS snapshot

In a FIPS snapshot, the import paths have a snapshot version number.
Remove that version in the test before proceeding with the usual checks.

Change-Id: I15c9d11dcac6d33330b334b8e5056c215bffa75c
Reviewed-on: https://go-review.googlesource.com/c/go/+/629977
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Roland Shoemaker <roland@golang.org>
Reviewed-by: Filippo Valsorda <filippo@golang.org>
This commit is contained in:
Russ Cox 2024-11-20 09:51:27 -05:00
parent a2a4f00783
commit 28f4e14ebe

View File

@ -40,9 +40,19 @@ func TestImports(t *testing.T) {
{{range .XTestImports -}} {{range .XTestImports -}}
{{$path}} {{.}} {{$path}} {{.}}
{{end -}}`, "crypto/internal/fips140/...") {{end -}}`, "crypto/internal/fips140/...")
out, err := cmd.CombinedOutput() bout, err := cmd.CombinedOutput()
if err != nil { if err != nil {
t.Fatalf("go list: %v\n%s", err, out) t.Fatalf("go list: %v\n%s", err, bout)
}
out := string(bout)
// In a snapshot, all the paths are crypto/internal/fips140/v1.2.3/...
// Determine the version number and remove it for the test.
_, v, _ := strings.Cut(out, "crypto/internal/fips140/")
v, _, _ = strings.Cut(v, "/")
v, _, _ = strings.Cut(v, " ")
if strings.HasPrefix(v, "v") && strings.Count(v, ".") == 2 {
out = strings.ReplaceAll(out, "crypto/internal/fips140/"+v, "crypto/internal/fips140")
} }
allPackages := make(map[string]bool) allPackages := make(map[string]bool)
@ -50,7 +60,7 @@ func TestImports(t *testing.T) {
// importCheck is the set of packages that import crypto/internal/fips140/check. // importCheck is the set of packages that import crypto/internal/fips140/check.
importCheck := make(map[string]bool) importCheck := make(map[string]bool)
for _, line := range strings.Split(string(out), "\n") { for _, line := range strings.Split(out, "\n") {
if line == "" { if line == "" {
continue continue
} }