diff --git a/cmd/scan/main.go b/cmd/scan/main.go index 7e4c257e67ce3ea63629762a0d3dddf8c2e1d79f..ad42e2ebdaf8a1f835b0ee93bb62084f388d6346 100644 --- a/cmd/scan/main.go +++ b/cmd/scan/main.go @@ -231,8 +231,7 @@ func (app *application) processDependencies(depType deps.Type, depList []*discov return } - checksum := discovery.FileChecksum(depList[0].FoundPath) - rprt := report.New(app.reportsDir, dstFiles[depType], version, depList[0].FileName, checksum) + rprt := report.New(app.reportsDir, dstFiles[depType], depList[0].FileName) // extract dependencies from dependencies file foundDeps := app.extractDepFromDepFile(depList) diff --git a/cmd/scan/main_test.go b/cmd/scan/main_test.go index 8b39bcd7ccefbba4748d3107420166c382029937..6f3839ebeadd8ca0c049489083b85ad3eef54f95 100644 --- a/cmd/scan/main_test.go +++ b/cmd/scan/main_test.go @@ -198,7 +198,6 @@ func TestCreateReports(t *testing.T) { t.Errorf("Failed to unmarshal expected JSON: %v", err) } - require.Equal(t, version, actual.ScannerVersion) require.ElementsMatch(t, expected.Libs, actual.Libs) } }) diff --git a/internal/discovery/discovery.go b/internal/discovery/discovery.go index b8ee7acec621003ab44cce3be6074b78d5043fe4..64b6ddc7f5867be7be6c4d589fd4616ed8f51f3c 100644 --- a/internal/discovery/discovery.go +++ b/internal/discovery/discovery.go @@ -1,8 +1,6 @@ package discovery import ( - "crypto/sha256" - "encoding/hex" "fmt" "io/fs" "os" @@ -57,14 +55,3 @@ func LocateFile(dir, fileName string, searchSubdirs bool) ([]string, error) { return matches, err } - -func FileChecksum(filePath string) string { - data, err := os.ReadFile(filePath) - if err != nil { - return "" - } - - hash := sha256.Sum256(data) - - return hex.EncodeToString(hash[:]) -} diff --git a/internal/discovery/discovery_test.go b/internal/discovery/discovery_test.go index e62fbd7602b96e04c7f89f01e9b81c94eb7aa0a2..24cbeac0429b8ea8994f1b6c2ad97d600980b38b 100644 --- a/internal/discovery/discovery_test.go +++ b/internal/discovery/discovery_test.go @@ -45,35 +45,3 @@ func TestLocateFile(t *testing.T) { }) } } - -func TestFileChecksum(t *testing.T) { - tests := []struct { - name string - path string - want string - }{ - { - "with Gemfile.lock", - "../testdata/dep_files/Gemfile.lock", - "9d54354092027c20112dd0852cc4ded7c0713f43719eb58fc7a92342942e5437", - }, - { - "with package.json", - "../testdata/dep_files/package.json", - "26726759188d1ed8e7fcfdc72f9b4ca1b914fe10fc621cb472e529ad71f4ff79", - }, - { - "with no file", - "../testdata/dep_files/no-file", - "", - }, - } - - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - got := FileChecksum(tt.path) - - require.Equal(t, tt.want, got) - }) - } -} diff --git a/internal/report/report.go b/internal/report/report.go index 4d0d3c3c5763ef8631943d5413ae4aee78b83a6d..744d31b18decc8e9d33cd11b951c449ec0af0019 100644 --- a/internal/report/report.go +++ b/internal/report/report.go @@ -13,21 +13,17 @@ import ( const libsDir = "libs" type Report struct { - ScannerVersion string `json:"scannerVersion"` - FileName string `json:"fileName,omitempty"` - FileChecksum string `json:"checksum,omitempty"` - Libs []deps.Dependency `json:"libs"` - dstDir string - dstFile string + FileName string `json:"fileName,omitempty"` + Libs []deps.Dependency `json:"libs"` + dstDir string + dstFile string } -func New(dstDir, dstFile, version, fileName, sha string) *Report { +func New(dstDir, dstFile, fileName string) *Report { return &Report{ - ScannerVersion: version, - FileName: fileName, - FileChecksum: sha, - dstDir: dstDir, - dstFile: dstFile, + FileName: fileName, + dstDir: dstDir, + dstFile: dstFile, } } diff --git a/internal/report/report_test.go b/internal/report/report_test.go index cff49e734262f88474a30e10a6ef02589952b5aa..4ac6ec89d822f7d2f1cc56d39f57b7d96fde7b25 100644 --- a/internal/report/report_test.go +++ b/internal/report/report_test.go @@ -12,11 +12,11 @@ func TestSave(t *testing.T) { fileName := "test_libs.json" dstDir := "reports" dstFile := filepath.Join(dstDir, "libs", fileName) - expected := `{"scannerVersion":"1.0.0","fileName":"Gemfile.lock","checksum":"1234567890","libs":[` + + expected := `{"fileName":"Gemfile.lock","libs":[` + `{"name":"rails","version":"~> 7.1.0"},` + `{"name":"kaminari","version":">= 1.2.0"}]}` - r := New(dstDir, fileName, "1.0.0", "Gemfile.lock", "1234567890") + r := New(dstDir, fileName, "Gemfile.lock") r.Libs = []deps.Dependency{ {Name: "rails", Version: "~> 7.1.0"}, {Name: "kaminari", Version: ">= 1.2.0"},