Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ require (
github.com/rs/zerolog v1.34.0
github.com/snyk/code-client-go v1.24.3
github.com/snyk/error-catalog-golang-public v0.0.0-20251008132755-b542bb643649
github.com/snyk/go-application-framework v0.0.0-20251118111357-8c9e565ff018
github.com/snyk/go-application-framework v0.0.0-20251204125544-1beb6901d22e
github.com/spf13/pflag v1.0.6
github.com/stretchr/testify v1.10.0
golang.org/x/net v0.43.0
Expand All @@ -39,6 +39,7 @@ require (
github.com/charmbracelet/x/ansi v0.8.0 // indirect
github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd // indirect
github.com/charmbracelet/x/term v0.2.1 // indirect
github.com/chzyer/readline v1.5.1 // indirect
github.com/cloudflare/circl v1.6.0 // indirect
github.com/cyphar/filepath-securejoin v0.4.1 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
Expand Down Expand Up @@ -69,6 +70,7 @@ require (
github.com/kr/pretty v0.3.1 // indirect
github.com/kr/text v0.2.0 // indirect
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
github.com/manifoldco/promptui v0.9.0 // indirect
github.com/maruel/natural v1.1.1 // indirect
github.com/mattn/go-colorable v0.1.14 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
Expand Down
17 changes: 15 additions & 2 deletions go.sum

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions internal/commands/ostest/depgraph_flow_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ func mockConcurrentStartTest(ctrl *gomock.Controller, n int, current, peak *atom
result.EXPECT().SetMetadata(gomock.Any(), gomock.Any()).Return().AnyTimes()
result.EXPECT().GetMetadata().Return(make(map[string]interface{})).AnyTimes()
result.EXPECT().GetBreachedPolicies().Return(&testapi.PolicyRefSet{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(&testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetEffectiveSummary().Return(&testapi.FindingSummary{}).AnyTimes()
result.EXPECT().GetRawSummary().Return(&testapi.FindingSummary{}).AnyTimes()

Expand Down Expand Up @@ -313,7 +313,7 @@ func Test_RunUnifiedTestFlow_WithIgnorePolicyFlag(t *testing.T) {
result.EXPECT().SetMetadata(gomock.Any(), gomock.Any()).Return().AnyTimes()
result.EXPECT().GetMetadata().Return(make(map[string]interface{})).AnyTimes()
result.EXPECT().GetBreachedPolicies().Return(&testapi.PolicyRefSet{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(&testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetEffectiveSummary().Return(&testapi.FindingSummary{}).AnyTimes()
result.EXPECT().GetRawSummary().Return(&testapi.FindingSummary{}).AnyTimes()

Expand Down Expand Up @@ -413,7 +413,7 @@ func Test_RunUnifiedTestFlow_WithProjectNameOverride(t *testing.T) {
result.EXPECT().SetMetadata(gomock.Any(), gomock.Any()).Return().AnyTimes()
result.EXPECT().GetMetadata().Return(make(map[string]interface{})).AnyTimes()
result.EXPECT().GetBreachedPolicies().Return(&testapi.PolicyRefSet{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(&testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetEffectiveSummary().Return(&testapi.FindingSummary{}).AnyTimes()
result.EXPECT().GetRawSummary().Return(&testapi.FindingSummary{}).AnyTimes()

Expand Down Expand Up @@ -515,7 +515,7 @@ func Test_RunUnifiedTestFlow_WithTargetReference(t *testing.T) {
result.EXPECT().SetMetadata(gomock.Any(), gomock.Any()).Return().AnyTimes()
result.EXPECT().GetMetadata().Return(make(map[string]interface{})).AnyTimes()
result.EXPECT().GetBreachedPolicies().Return(&testapi.PolicyRefSet{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(&testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetEffectiveSummary().Return(&testapi.FindingSummary{}).AnyTimes()
result.EXPECT().GetRawSummary().Return(&testapi.FindingSummary{}).AnyTimes()

Expand Down
2 changes: 1 addition & 1 deletion internal/commands/ostest/sbom_flow.go
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ func createSbomSubject(
var subject testapi.TestSubjectCreate

err := subject.FromSbomSubject(testapi.SbomSubject{
Type: testapi.Sbom,
Type: testapi.SbomSubjectTypeSbom,
SbomBundleId: sbomBundleHash,
Locator: testapi.LocalPathLocator{
Paths: []string{
Expand Down
4 changes: 2 additions & 2 deletions internal/commands/ostest/sbom_flow_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -400,7 +400,7 @@ func setupTest(
})
} else {
err = testSubject.FromSbomSubject(testapi.SbomSubject{
Type: testapi.Sbom,
Type: testapi.SbomSubjectTypeSbom,
SbomBundleId: "test-sbom-hash",
Locator: testapi.LocalPathLocator{
Paths: []string{
Expand All @@ -417,7 +417,7 @@ func setupTest(
mockTestResult := gafclientmocks.NewMockTestResult(ctrl)
mockTestResult.EXPECT().GetExecutionState().Return(testapi.TestExecutionStatesFinished).AnyTimes()
mockTestResult.EXPECT().Findings(gomock.Any()).Return([]testapi.FindingData{findingData}, true, nil).AnyTimes()
mockTestResult.EXPECT().GetTestSubject().Return(testSubject).AnyTimes()
mockTestResult.EXPECT().GetTestSubject().Return(&testSubject).AnyTimes()
mockTestResult.EXPECT().GetEffectiveSummary().Return(summary).AnyTimes()
mockTestResult.EXPECT().GetRawSummary().Return(summary).AnyTimes()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ func setupSBOMResolutionIntegrationTest(
result.EXPECT().SetMetadata(gomock.Any(), gomock.Any()).Return().AnyTimes()
result.EXPECT().GetMetadata().Return(make(map[string]interface{})).AnyTimes()
result.EXPECT().GetBreachedPolicies().Return(&testapi.PolicyRefSet{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetTestSubject().Return(&testapi.TestSubject{}).AnyTimes()
result.EXPECT().GetEffectiveSummary().Return(&testapi.FindingSummary{}).AnyTimes()
result.EXPECT().GetRawSummary().Return(&testapi.FindingSummary{}).AnyTimes()

Expand Down
2 changes: 1 addition & 1 deletion internal/commands/ostest/test_execution.go
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ func executeTest(

startParams := testapi.StartTestParams{
OrgID: orgID,
Subject: subject,
Subject: &subject,
LocalPolicy: localPolicy,
}

Expand Down
2 changes: 1 addition & 1 deletion internal/commands/ostest/workflow_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -941,7 +941,7 @@ func (s *mockAPIState) handleGetTestResult(w http.ResponseWriter, r *http.Reques
Outcome: &testapi.TestOutcome{Result: pass},
RawSummary: &testapi.FindingSummary{Count: 0},
EffectiveSummary: &testapi.FindingSummary{Count: 0},
Subject: testapi.TestSubject{},
Subject: &testapi.TestSubject{},
},
}
err := json.NewEncoder(w).Encode(struct {
Expand Down
7 changes: 1 addition & 6 deletions internal/legacy/transform/transform.go
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,6 @@ type SnykSchemaToLegacyParams struct {
// ConvertSnykSchemaFindingsToLegacy is a function that converts snyk schema findings into
// the legacy vulnerability response structure for the snyk cli.
func ConvertSnykSchemaFindingsToLegacy(ctx context.Context, params *SnykSchemaToLegacyParams) (*definitions.LegacyVulnerabilityResponse, error) {
if _, err := params.TestResult.GetTestSubject().AsDepGraphSubject(); err != nil {
return nil, params.ErrFactory.NewLegacyJSONTransformerError(
fmt.Errorf("expected a depgraph subject but got something else: %w", err))
}

allVulnerabilities, err := FindingsToLegacyVulns(params.Findings, params.PackageManager, params.Logger)
if err != nil {
return nil, params.ErrFactory.NewLegacyJSONTransformerError(fmt.Errorf("converting finding to legacy vuln: %w", err))
Expand Down Expand Up @@ -401,7 +396,7 @@ func ProcessLocationForVuln(
return fmt.Errorf("getting location discriminator: %w", err)
}
switch locDisc {
case string(testapi.Source):
case string(testapi.SourceLocationTypeSource):
logger.Warn().Str(logFieldDiscriminator, locDisc).Msg("source location type not yet supported for legacy conversion")
_, err = loc.AsSourceLocation()
if err != nil {
Expand Down
2 changes: 1 addition & 1 deletion internal/legacy/transform/transform_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -446,7 +446,7 @@ func TestProcessLocationForVuln(t *testing.T) {

sourceLoc := &testapi.FindingLocation{}
err = sourceLoc.FromSourceLocation(testapi.SourceLocation{
Type: testapi.Source,
Type: testapi.SourceLocationTypeSource,
})
require.NoError(t, err)

Expand Down