internal/{database,osv}: add more robust validation for osv entries
Adds functions to validate OSV entries, and calls these functions in
both unit tests and pre-deploy checks.
Change-Id: Id5ddbb6c1a5c81b9176491d5cf1a88fbae928606
Reviewed-on: https://go-review.googlesource.com/c/vulndb/+/495498
Run-TryBot: Tatiana Bradley <tatianabradley@google.com>
Reviewed-by: Tatiana Bradley <tatianabradley@google.com>
Reviewed-by: Damien Neil <dneil@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
diff --git a/all_test.go b/all_test.go
index d632c29..2e16df4 100644
--- a/all_test.go
+++ b/all_test.go
@@ -21,6 +21,7 @@
"github.com/google/go-cmp/cmp"
"github.com/google/go-cmp/cmp/cmpopts"
"golang.org/x/vulndb/internal/cveschema5"
+ "golang.org/x/vulndb/internal/osvutils"
"golang.org/x/vulndb/internal/report"
)
@@ -99,6 +100,9 @@
if diff := cmp.Diff(generated, current, cmpopts.EquateEmpty()); diff != "" {
t.Errorf("%s does not match report:\n%v", osvFilename, diff)
}
+ if err := osvutils.ValidateExceptTimestamps(¤t); err != nil {
+ t.Error(err)
+ }
}
if r.CVEMetadata != nil {
generated, err := r.ToCVE5(goID)