aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdolfo García Veytia (Puerco) <puerco@chainguard.dev>2022-11-30 19:46:45 -0600
committerAdolfo García Veytia (Puerco) <puerco@chainguard.dev>2022-11-30 19:46:45 -0600
commit9023f7966be2a251cf01de920aca555f5722e21d (patch)
tree28b75d1477b66aac6189920952445c16806b6a60
parent72adf564f89a4e4ef42bb3e672ae153b1e9f7923 (diff)
downloadspdx-tools-9023f7966be2a251cf01de920aca555f5722e21d.tar.gz
Add SHA512 support to 2.2 parser tests
Signed-off-by: Adolfo García Veytia (Puerco) <puerco@chainguard.dev>
-rw-r--r--tvloader/parser2v2/parse_file_test.go49
-rw-r--r--tvloader/parser2v2/parse_package_test.go48
2 files changed, 37 insertions, 60 deletions
diff --git a/tvloader/parser2v2/parse_file_test.go b/tvloader/parser2v2/parse_file_test.go
index 7341d9e..0bcea7d 100644
--- a/tvloader/parser2v2/parse_file_test.go
+++ b/tvloader/parser2v2/parse_file_test.go
@@ -2,6 +2,7 @@
package parser2v2
import (
+ "fmt"
"testing"
"github.com/spdx/tools-golang/spdx/common"
@@ -425,41 +426,29 @@ func TestParser2_2CanParseFileTags(t *testing.T) {
len(parser.file.FileTypes))
}
- // File Checksums
- codeSha1 := "85ed0817af83a24ad8da68c2b5094de69833983c"
- sumSha1 := "SHA1: 85ed0817af83a24ad8da68c2b5094de69833983c"
- codeSha256 := "11b6d3ee554eedf79299905a98f9b9a04e498210b59f15094c916c91d150efcd"
- sumSha256 := "SHA256: 11b6d3ee554eedf79299905a98f9b9a04e498210b59f15094c916c91d150efcd"
- codeMd5 := "624c1abb3664f4b35547e7c73864ad24"
- sumMd5 := "MD5: 624c1abb3664f4b35547e7c73864ad24"
- err = parser.parsePairFromFile2_2("FileChecksum", sumSha1)
- if err != nil {
- t.Errorf("expected nil error, got %v", err)
+ testChecksums := map[common.ChecksumAlgorithm]string{
+ "MD5": "624c1abb3664f4b35547e7c73864ad24",
+ "SHA1": "85ed0817af83a24ad8da68c2b5094de69833983c",
+ "SHA256": "11b6d3ee554eedf79299905a98f9b9a04e498210b59f15094c916c91d150efcd",
+ "SHA512": "4ced3267f5ed38df65ceebc43e97aa6c2948cc7ef3288c2e5074e7df7fab544cc93339604513ea5f65616f9ed1c48581465043c8a9b693ef20fd4fddaf25e1b9",
}
- err = parser.parsePairFromFile2_2("FileChecksum", sumSha256)
- if err != nil {
- t.Errorf("expected nil error, got %v", err)
- }
- err = parser.parsePairFromFile2_2("FileChecksum", sumMd5)
- if err != nil {
- t.Errorf("expected nil error, got %v", err)
+
+ for algo, tc := range testChecksums {
+ if err := parser.parsePairFromFile2_2(
+ "FileChecksum", fmt.Sprintf("%s: %s", algo, tc)); err != nil {
+ t.Errorf("expected error, got %v", err)
+ }
}
+
for _, checksum := range parser.file.Checksums {
- switch checksum.Algorithm {
- case common.SHA1:
- if checksum.Value != codeSha1 {
- t.Errorf("expected %s for FileChecksumSHA1, got %s", codeSha1, checksum.Value)
- }
- case common.SHA256:
- if checksum.Value != codeSha256 {
- t.Errorf("expected %s for FileChecksumSHA1, got %s", codeSha256, checksum.Value)
- }
- case common.MD5:
- if checksum.Value != codeMd5 {
- t.Errorf("expected %s for FileChecksumSHA1, got %s", codeMd5, checksum.Value)
- }
+ if checksum.Value != testChecksums[checksum.Algorithm] {
+ t.Errorf(
+ "expected %s for FileChecksum%s, got %s",
+ testChecksums[checksum.Algorithm], checksum.Algorithm, checksum.Value,
+ )
}
}
+
// Concluded License
err = parser.parsePairFromFile2_2("LicenseConcluded", "Apache-2.0 OR GPL-2.0-or-later")
if err != nil {
diff --git a/tvloader/parser2v2/parse_package_test.go b/tvloader/parser2v2/parse_package_test.go
index a1610f7..e07cf5a 100644
--- a/tvloader/parser2v2/parse_package_test.go
+++ b/tvloader/parser2v2/parse_package_test.go
@@ -2,6 +2,7 @@
package parser2v2
import (
+ "fmt"
"testing"
"github.com/spdx/tools-golang/spdx/common"
@@ -335,39 +336,26 @@ func TestParser2_2CanParsePackageTags(t *testing.T) {
// Package Verification Code
// SKIP -- separate tests for "excludes", or not, below
- // Package Checksums
- codeSha1 := "85ed0817af83a24ad8da68c2b5094de69833983c"
- sumSha1 := "SHA1: 85ed0817af83a24ad8da68c2b5094de69833983c"
- codeSha256 := "11b6d3ee554eedf79299905a98f9b9a04e498210b59f15094c916c91d150efcd"
- sumSha256 := "SHA256: 11b6d3ee554eedf79299905a98f9b9a04e498210b59f15094c916c91d150efcd"
- codeMd5 := "624c1abb3664f4b35547e7c73864ad24"
- sumMd5 := "MD5: 624c1abb3664f4b35547e7c73864ad24"
- err = parser.parsePairFromPackage2_2("PackageChecksum", sumSha1)
- if err != nil {
- t.Errorf("expected nil error, got %v", err)
+ testChecksums := map[common.ChecksumAlgorithm]string{
+ "MD5": "624c1abb3664f4b35547e7c73864ad24",
+ "SHA1": "85ed0817af83a24ad8da68c2b5094de69833983c",
+ "SHA256": "11b6d3ee554eedf79299905a98f9b9a04e498210b59f15094c916c91d150efcd",
+ "SHA512": "4ced3267f5ed38df65ceebc43e97aa6c2948cc7ef3288c2e5074e7df7fab544cc93339604513ea5f65616f9ed1c48581465043c8a9b693ef20fd4fddaf25e1b9",
}
- err = parser.parsePairFromPackage2_2("PackageChecksum", sumSha256)
- if err != nil {
- t.Errorf("expected nil error, got %v", err)
- }
- err = parser.parsePairFromPackage2_2("PackageChecksum", sumMd5)
- if err != nil {
- t.Errorf("expected nil error, got %v", err)
+
+ for algo, tc := range testChecksums {
+ if err := parser.parsePairFromPackage2_2(
+ "PackageChecksum", fmt.Sprintf("%s: %s", algo, tc)); err != nil {
+ t.Errorf("expected error, got %v", err)
+ }
}
+
for _, checksum := range parser.pkg.PackageChecksums {
- switch checksum.Algorithm {
- case common.SHA1:
- if checksum.Value != codeSha1 {
- t.Errorf("expected %s for FileChecksumSHA1, got %s", codeSha1, checksum.Value)
- }
- case common.SHA256:
- if checksum.Value != codeSha256 {
- t.Errorf("expected %s for FileChecksumSHA1, got %s", codeSha256, checksum.Value)
- }
- case common.MD5:
- if checksum.Value != codeMd5 {
- t.Errorf("expected %s for FileChecksumSHA1, got %s", codeMd5, checksum.Value)
- }
+ if checksum.Value != testChecksums[checksum.Algorithm] {
+ t.Errorf(
+ "expected %s for PackageChecksum%s, got %s",
+ testChecksums[checksum.Algorithm], checksum.Algorithm, checksum.Value,
+ )
}
}