diff options
author | Adolfo García Veytia (Puerco) <puerco@chainguard.dev> | 2022-11-30 19:47:15 -0600 |
---|---|---|
committer | Adolfo García Veytia (Puerco) <puerco@chainguard.dev> | 2022-11-30 19:47:15 -0600 |
commit | d7a12a575f3e56f98f0084988ea442028f2e519c (patch) | |
tree | a404c4ae42b43b232a9a02b6ed2b6e944fd458ee | |
parent | 9023f7966be2a251cf01de920aca555f5722e21d (diff) | |
download | spdx-tools-d7a12a575f3e56f98f0084988ea442028f2e519c.tar.gz |
Add SHA512 support to 2.3 parser tests
Signed-off-by: Adolfo García Veytia (Puerco) <puerco@chainguard.dev>
-rw-r--r-- | tvloader/parser2v3/parse_file_test.go | 48 | ||||
-rw-r--r-- | tvloader/parser2v3/parse_package_test.go | 48 |
2 files changed, 36 insertions, 60 deletions
diff --git a/tvloader/parser2v3/parse_file_test.go b/tvloader/parser2v3/parse_file_test.go index c72aa86..1f4fadb 100644 --- a/tvloader/parser2v3/parse_file_test.go +++ b/tvloader/parser2v3/parse_file_test.go @@ -2,6 +2,7 @@ package parser2v3 import ( + "fmt" "testing" "github.com/spdx/tools-golang/spdx/common" @@ -425,39 +426,26 @@ func TestParser2_3CanParseFileTags(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_3("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_3("FileChecksum", sumSha256) - if err != nil { - t.Errorf("expected nil error, got %v", err) - } - err = parser.parsePairFromFile2_3("FileChecksum", sumMd5) - if err != nil { - t.Errorf("expected nil error, got %v", err) + + for algo, tc := range testChecksums { + if err := parser.parsePairFromFile2_3( + "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 diff --git a/tvloader/parser2v3/parse_package_test.go b/tvloader/parser2v3/parse_package_test.go index 714e61f..c33e461 100644 --- a/tvloader/parser2v3/parse_package_test.go +++ b/tvloader/parser2v3/parse_package_test.go @@ -2,6 +2,7 @@ package parser2v3 import ( + "fmt" "testing" "github.com/spdx/tools-golang/spdx/common" @@ -335,39 +336,26 @@ func TestParser2_3CanParsePackageTags(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_3("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_3("PackageChecksum", sumSha256) - if err != nil { - t.Errorf("expected nil error, got %v", err) - } - err = parser.parsePairFromPackage2_3("PackageChecksum", sumMd5) - if err != nil { - t.Errorf("expected nil error, got %v", err) + + for algo, tc := range testChecksums { + if err := parser.parsePairFromPackage2_3( + "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, + ) } } |