diff options
author | Catalin Stratu <catalinstratu45@gmail.com> | 2022-03-14 17:07:38 +0200 |
---|---|---|
committer | Catalin Stratu <catalinstratu45@gmail.com> | 2022-03-15 11:24:39 +0200 |
commit | 673cb49f3e5472b269747dc14ef132caf9032050 (patch) | |
tree | 7e757720b75390fbe746e5786cb17e7f437ee16d /builder/builder2v2 | |
parent | d87b06509712d2369d1cad8b814370b0519c7379 (diff) | |
download | spdx-tools-673cb49f3e5472b269747dc14ef132caf9032050.tar.gz |
file patch fixes
Signed-off-by: Catalin Stratu <catalinstratu45@gmail.com>
Diffstat (limited to 'builder/builder2v2')
-rw-r--r-- | builder/builder2v2/build_file_test.go | 2 | ||||
-rw-r--r-- | builder/builder2v2/build_package.go | 12 | ||||
-rw-r--r-- | builder/builder2v2/build_package_test.go | 12 |
3 files changed, 15 insertions, 11 deletions
diff --git a/builder/builder2v2/build_file_test.go b/builder/builder2v2/build_file_test.go index 60f285c..6fc2643 100644 --- a/builder/builder2v2/build_file_test.go +++ b/builder/builder2v2/build_file_test.go @@ -22,7 +22,7 @@ func TestBuilder2_2CanBuildFileSection(t *testing.T) { if file1 == nil { t.Fatalf("expected non-nil file, got nil") } - if file1.FileName != "/file1.testdata.txt" { + if file1.FileName != "./file1.testdata.txt" { t.Errorf("expected %v, got %v", "/file1.testdata.txt", file1.FileName) } if file1.FileSPDXIdentifier != spdx.ElementID("File17") { diff --git a/builder/builder2v2/build_package.go b/builder/builder2v2/build_package.go index 7f871a4..53b2613 100644 --- a/builder/builder2v2/build_package.go +++ b/builder/builder2v2/build_package.go @@ -4,11 +4,10 @@ package builder2v2 import ( "fmt" - "path/filepath" - "strings" - "github.com/spdx/tools-golang/spdx" "github.com/spdx/tools-golang/utils" + "path/filepath" + "regexp" ) // BuildPackageSection2_2 creates an SPDX Package (version 2.2), returning @@ -24,11 +23,16 @@ func BuildPackageSection2_2(packageName string, dirRoot string, pathsIgnore []st return nil, err } + re, ok := regexp.Compile("/+") + if ok != nil { + return nil, err + } + files := map[spdx.ElementID]*spdx.File2_2{} fileNumber := 0 for _, fp := range filepaths { newFilePatch := filepath.FromSlash("./" + fp) - newFile, err := BuildFileSection2_2(strings.Replace(newFilePatch, string(filepath.Separator), "/", -1), dirRoot, fileNumber) + newFile, err := BuildFileSection2_2(re.ReplaceAllLiteralString(newFilePatch, string(filepath.Separator)), dirRoot, fileNumber) if err != nil { return nil, err } diff --git a/builder/builder2v2/build_package_test.go b/builder/builder2v2/build_package_test.go index f58d6b9..6f55abc 100644 --- a/builder/builder2v2/build_package_test.go +++ b/builder/builder2v2/build_package_test.go @@ -66,7 +66,7 @@ func TestBuilder2_2CanBuildPackageSection(t *testing.T) { t.Fatalf("expected non-nil file, got nil") } if fileEmpty.FileName != "./emptyfile.testdata.txt" { - t.Errorf("expected %v, got %v", "/emptyfile.testdata.txt", fileEmpty.FileName) + t.Errorf("expected %v, got %v", "./emptyfile.testdata.txt", fileEmpty.FileName) } if fileEmpty.FileSPDXIdentifier != spdx.ElementID("File0") { t.Errorf("expected %v, got %v", "File0", fileEmpty.FileSPDXIdentifier) @@ -120,31 +120,31 @@ func TestBuilder2_2CanIgnoreFiles(t *testing.T) { t.Fatalf("expected %d, got %d", 5, len(pkg.Files)) } - want := "/dontscan.txt" + want := "./dontscan.txt" got := pkg.Files[spdx.ElementID("File0")].FileName if want != got { t.Errorf("expected %v, got %v", want, got) } - want = "/keep/keep.txt" + want = "./keep/keep.txt" got = pkg.Files[spdx.ElementID("File1")].FileName if want != got { t.Errorf("expected %v, got %v", want, got) } - want = "/keep.txt" + want = "./keep.txt" got = pkg.Files[spdx.ElementID("File2")].FileName if want != got { t.Errorf("expected %v, got %v", want, got) } - want = "/subdir/keep/dontscan.txt" + want = "./subdir/keep/dontscan.txt" got = pkg.Files[spdx.ElementID("File3")].FileName if want != got { t.Errorf("expected %v, got %v", want, got) } - want = "/subdir/keep/keep.txt" + want = "./subdir/keep/keep.txt" got = pkg.Files[spdx.ElementID("File4")].FileName if want != got { t.Errorf("expected %v, got %v", want, got) |