From 4e8c6dded70844709400fa0ce4ce45e66c8458ca Mon Sep 17 00:00:00 2001 From: Giuseppe Guerra Date: Wed, 28 Jun 2023 10:27:13 +0200 Subject: [PATCH] Removed context.Context from DetectorsProvider --- .../angular/angulardetector/angulardetector_test.go | 7 +++---- .../manager/loader/angular/angulardetector/provider.go | 9 ++++----- .../loader/angular/angularinspector/angularinspector.go | 2 +- .../angulardetectorsprovider/dynamic.go | 3 +-- .../angulardetectorsprovider/dynamic_test.go | 8 ++++---- .../angularinspector/angularinspector_test.go | 5 ++--- 6 files changed, 15 insertions(+), 19 deletions(-) diff --git a/pkg/plugins/manager/loader/angular/angulardetector/angulardetector_test.go b/pkg/plugins/manager/loader/angular/angulardetector/angulardetector_test.go index 816c6c937a9..c7a7adf207c 100644 --- a/pkg/plugins/manager/loader/angular/angulardetector/angulardetector_test.go +++ b/pkg/plugins/manager/loader/angular/angulardetector/angulardetector_test.go @@ -1,7 +1,6 @@ package angulardetector import ( - "context" "regexp" "testing" @@ -44,7 +43,7 @@ func TestRegexDetector(t *testing.T) { func TestStaticDetectorsProvider(t *testing.T) { p := StaticDetectorsProvider{Detectors: testDetectors} - detectors := p.ProvideDetectors(context.Background()) + detectors := p.ProvideDetectors() require.NotEmpty(t, detectors) require.Equal(t, testDetectors, detectors) } @@ -54,7 +53,7 @@ type fakeDetectorsProvider struct { returns []AngularDetector } -func (p *fakeDetectorsProvider) ProvideDetectors(_ context.Context) []AngularDetector { +func (p *fakeDetectorsProvider) ProvideDetectors() []AngularDetector { p.calls += 1 return p.returns } @@ -113,7 +112,7 @@ func TestSequenceDetectorsProvider(t *testing.T) { for _, p := range tc.fakeProviders { seq = append(seq, DetectorsProvider(p)) } - detectors := seq.ProvideDetectors(context.Background()) + detectors := seq.ProvideDetectors() tc.exp(t, tc.fakeProviders, detectors) }) } diff --git a/pkg/plugins/manager/loader/angular/angulardetector/provider.go b/pkg/plugins/manager/loader/angular/angulardetector/provider.go index 62cf1d14b3b..9944dfccad8 100644 --- a/pkg/plugins/manager/loader/angular/angulardetector/provider.go +++ b/pkg/plugins/manager/loader/angular/angulardetector/provider.go @@ -1,14 +1,13 @@ package angulardetector import ( - "context" "regexp" ) // DetectorsProvider can provide multiple AngularDetectors used for Angular detection. type DetectorsProvider interface { // ProvideDetectors returns a slice of AngularDetector. - ProvideDetectors(ctx context.Context) []AngularDetector + ProvideDetectors() []AngularDetector } // StaticDetectorsProvider is a DetectorsProvider that always returns a pre-defined slice of AngularDetector. @@ -16,7 +15,7 @@ type StaticDetectorsProvider struct { Detectors []AngularDetector } -func (p *StaticDetectorsProvider) ProvideDetectors(_ context.Context) []AngularDetector { +func (p *StaticDetectorsProvider) ProvideDetectors() []AngularDetector { return p.Detectors } @@ -24,9 +23,9 @@ func (p *StaticDetectorsProvider) ProvideDetectors(_ context.Context) []AngularD // provided result that isn't empty. type SequenceDetectorsProvider []DetectorsProvider -func (p SequenceDetectorsProvider) ProvideDetectors(ctx context.Context) []AngularDetector { +func (p SequenceDetectorsProvider) ProvideDetectors() []AngularDetector { for _, provider := range p { - if detectors := provider.ProvideDetectors(ctx); len(detectors) > 0 { + if detectors := provider.ProvideDetectors(); len(detectors) > 0 { return detectors } } diff --git a/pkg/plugins/manager/loader/angular/angularinspector/angularinspector.go b/pkg/plugins/manager/loader/angular/angularinspector/angularinspector.go index f477d273c94..6a966e7267a 100644 --- a/pkg/plugins/manager/loader/angular/angularinspector/angularinspector.go +++ b/pkg/plugins/manager/loader/angular/angularinspector/angularinspector.go @@ -41,7 +41,7 @@ func (i *PatternsListInspector) Inspect(ctx context.Context, p *plugins.Plugin) if err != nil { return false, fmt.Errorf("module.js readall: %w", err) } - for _, d := range i.DetectorsProvider.ProvideDetectors(ctx) { + for _, d := range i.DetectorsProvider.ProvideDetectors() { if d.DetectAngular(b) { isAngular = true break diff --git a/pkg/services/pluginsintegration/angulardetectorsprovider/dynamic.go b/pkg/services/pluginsintegration/angulardetectorsprovider/dynamic.go index 91be6b119ca..da0fb714487 100644 --- a/pkg/services/pluginsintegration/angulardetectorsprovider/dynamic.go +++ b/pkg/services/pluginsintegration/angulardetectorsprovider/dynamic.go @@ -262,8 +262,7 @@ func (d *Dynamic) Run(ctx context.Context) error { } // ProvideDetectors returns the cached detectors. It returns an empty slice if there's no value. -// TODO: remove context here? -func (d *Dynamic) ProvideDetectors(_ context.Context) []angulardetector.AngularDetector { +func (d *Dynamic) ProvideDetectors() []angulardetector.AngularDetector { // Block until channel is closed, which is done after the restore from db is done. <-d.initialRestoreDone diff --git a/pkg/services/pluginsintegration/angulardetectorsprovider/dynamic_test.go b/pkg/services/pluginsintegration/angulardetectorsprovider/dynamic_test.go index bd26d57625b..2225cf90973 100644 --- a/pkg/services/pluginsintegration/angulardetectorsprovider/dynamic_test.go +++ b/pkg/services/pluginsintegration/angulardetectorsprovider/dynamic_test.go @@ -60,14 +60,14 @@ func TestDynamicAngularDetectorsProvider(t *testing.T) { t.Run("ProvideDetectors", func(t *testing.T) { t.Run("returns empty result by default", func(t *testing.T) { svc := provideDynamic(t, srv.URL, defaultCacheTTL, dynamicWithInitialRestoreDone) - r := svc.ProvideDetectors(context.Background()) + r := svc.ProvideDetectors() require.Empty(t, r) }) t.Run("returns cached detectors", func(t *testing.T) { svc := provideDynamic(t, srv.URL, defaultCacheTTL, dynamicWithInitialRestoreDone) svc.setDetectors(mockGCOMDetectors) - checkMockDetectors(t, svc.ProvideDetectors(context.Background())) + checkMockDetectors(t, svc.ProvideDetectors()) }) t.Run("awaits initial restore done", func(t *testing.T) { @@ -81,7 +81,7 @@ func TestDynamicAngularDetectorsProvider(t *testing.T) { // ensure the value is read and this goroutine exits done <- struct{}{} }() - r := svc.ProvideDetectors(context.Background()) + r := svc.ProvideDetectors() checkMockDetectors(t, r) <-done }) @@ -214,7 +214,7 @@ func TestDynamicAngularDetectorsProvider(t *testing.T) { bg := newBackgroundServiceScenario(svc, func() {}) t.Cleanup(bg.close) bg.run(context.Background(), t) - d := svc.ProvideDetectors(context.Background()) + d := svc.ProvideDetectors() checkMockDetectors(t, d) require.False(t, gcom.httpCalls.called(), "gcom api should not be called") diff --git a/pkg/services/pluginsintegration/angularinspector/angularinspector_test.go b/pkg/services/pluginsintegration/angularinspector/angularinspector_test.go index 043895dec1a..c968aa5fc14 100644 --- a/pkg/services/pluginsintegration/angularinspector/angularinspector_test.go +++ b/pkg/services/pluginsintegration/angularinspector/angularinspector_test.go @@ -1,7 +1,6 @@ package angularinspector import ( - "context" "testing" "github.com/stretchr/testify/require" @@ -24,7 +23,7 @@ func TestProvideService(t *testing.T) { require.NoError(t, err) require.IsType(t, inspector.Inspector, &angularinspector.PatternsListInspector{}) patternsListInspector := inspector.Inspector.(*angularinspector.PatternsListInspector) - detectors := patternsListInspector.DetectorsProvider.ProvideDetectors(context.Background()) + detectors := patternsListInspector.DetectorsProvider.ProvideDetectors() require.NotEmpty(t, detectors, "provided detectors should not be empty") }) @@ -42,7 +41,7 @@ func TestProvideService(t *testing.T) { require.Len(t, seq, 2, "should return the correct number of providers") require.IsType(t, seq[0], &angulardetectorsprovider.Dynamic{}, "first AngularDetector provided should be gcom") require.IsType(t, seq[1], &angulardetector.StaticDetectorsProvider{}, "second AngularDetector provided should be static") - staticDetectors := seq[1].ProvideDetectors(context.Background()) + staticDetectors := seq[1].ProvideDetectors() require.NotEmpty(t, staticDetectors, "provided static detectors should not be empty") }) }