diff options
Diffstat (limited to 'tvloader/parser2v2/parser.go')
-rw-r--r-- | tvloader/parser2v2/parser.go | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/tvloader/parser2v2/parser.go b/tvloader/parser2v2/parser.go index e89bab1..9886874 100644 --- a/tvloader/parser2v2/parser.go +++ b/tvloader/parser2v2/parser.go @@ -20,7 +20,12 @@ func ParseTagValues(tvs []reader.TagValuePair) (*spdx.Document2_2, error) { return nil, err } } - + if parser.file != nil && parser.file.FileSPDXIdentifier == nullSpdxElementId2_2 { + return nil, fmt.Errorf("file with FileName %s does not have SPDX identifier", parser.file.FileName) + } + if parser.pkg != nil && parser.pkg.PackageSPDXIdentifier == nullSpdxElementId2_2 { + return nil, fmt.Errorf("package with PackageName %s does not have SPDX identifier", parser.pkg.PackageName) + } return parser.doc, nil } @@ -41,14 +46,14 @@ func (parser *tvParser2_2) parsePair2_2(tag string, value string) error { case psReview2_2: return parser.parsePairFromReview2_2(tag, value) default: - return fmt.Errorf("Parser state %v not recognized when parsing (%s, %s)", parser.st, tag, value) + return fmt.Errorf("parser state %v not recognized when parsing (%s, %s)", parser.st, tag, value) } } func (parser *tvParser2_2) parsePairFromStart2_2(tag string, value string) error { // fail if not in Start parser state if parser.st != psStart2_2 { - return fmt.Errorf("Got invalid state %v in parsePairFromStart2_2", parser.st) + return fmt.Errorf("got invalid state %v in parsePairFromStart2_2", parser.st) } // create an SPDX Document data struct if we don't have one already |