Skip to content

Commit

Permalink
Refactoring and cleanup (#273)
Browse files Browse the repository at this point in the history
* Refactoring and cleanup

* Remove osv-scanner testdata go.sum files

* Remove other unnecessary go.sum files

* Fix circulardependencies tests

* PR review feedback
  • Loading branch information
xnyo authored Nov 27, 2024
1 parent 191f1b7 commit 591f2ce
Show file tree
Hide file tree
Showing 77 changed files with 319 additions and 240 deletions.
17 changes: 17 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,20 @@ config/custom.yaml
.idea
.bin
.npmrc

# binaries
plugincheck
plugincheck2
sourcemapdiff

# osv-scanner and other testdata.
# GoLand creates those but we don't need them.
pkg/analysis/passes/osvscanner/testdata/golang/critical/go.sum
pkg/analysis/passes/osvscanner/testdata/golang/high/go.sum
pkg/analysis/passes/osvscanner/testdata/golang/low/go.sum
pkg/analysis/passes/osvscanner/testdata/golang/moderate/go.sum
pkg/analysis/passes/osvscanner/testdata/golang/none/go.sum
pkg/analysis/passes/sdkusage/testdata/sdk-2-months-old/go.sum
pkg/analysis/passes/sdkusage/testdata/sdk-5-months-old/go.sum
pkg/analysis/passes/sdkusage/testdata/validgomod/go.sum

5 changes: 3 additions & 2 deletions pkg/analysis/passes/archivename/archivename_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@ import (
"path/filepath"
"testing"

"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"

"github.com/grafana/plugin-validator/pkg/analysis"
"github.com/grafana/plugin-validator/pkg/analysis/passes/archive"
"github.com/grafana/plugin-validator/pkg/analysis/passes/metadata"
"github.com/grafana/plugin-validator/pkg/testpassinterceptor"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)

const pluginId = "test-plugin-panel"
Expand Down
33 changes: 17 additions & 16 deletions pkg/analysis/passes/backendbinary/backendbinary_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@ import (
"path/filepath"
"testing"

"github.com/stretchr/testify/require"

"github.com/grafana/plugin-validator/pkg/analysis"
"github.com/grafana/plugin-validator/pkg/analysis/passes/archive"
"github.com/grafana/plugin-validator/pkg/analysis/passes/nestedmetadata"
"github.com/grafana/plugin-validator/pkg/testpassinterceptor"
"github.com/grafana/plugin-validator/pkg/utils"
"github.com/stretchr/testify/require"
"github.com/grafana/plugin-validator/pkg/testutils"
)

func TestBackendFalseExecutableEmpty(t *testing.T) {
Expand All @@ -19,7 +20,7 @@ func TestBackendFalseExecutableEmpty(t *testing.T) {
"type": "panel"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand All @@ -45,7 +46,7 @@ func TestBackendFalseExecutableWithValue(t *testing.T) {
"executable": "gpx_plugin"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down Expand Up @@ -76,7 +77,7 @@ func TestBackendTrueExecutableEmpty(t *testing.T) {
"backend": true
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down Expand Up @@ -107,7 +108,7 @@ func TestAlertingTrueBackendFalse(t *testing.T) {
"alerting": true
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down Expand Up @@ -139,7 +140,7 @@ func TestBackendTrueExecutableMissing(t *testing.T) {
"executable": "gpx_plugin"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down Expand Up @@ -171,7 +172,7 @@ func TestBackendTrueExecutablesFound(t *testing.T) {
"executable": "gpx_plugin"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down Expand Up @@ -203,10 +204,10 @@ func TestBackendTrueNested(t *testing.T) {
"executable": "gpx_plugin"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

nestedMeta, err := utils.JSONToMetadata(nestedPluginJsonContent)
nestedMeta, err := testutils.JSONToMetadata(nestedPluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down Expand Up @@ -237,10 +238,10 @@ func TestBackendTrueOnlyNestedBinary(t *testing.T) {
"executable": "gpx_plugin"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

nestedMeta, err := utils.JSONToMetadata(nestedPluginJsonContent)
nestedMeta, err := testutils.JSONToMetadata(nestedPluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down Expand Up @@ -273,10 +274,10 @@ func TestBackendMissingNestedDatasource(t *testing.T) {
"executable": "gpx_plugin"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

nestedMeta, err := utils.JSONToMetadata(nestedPluginJsonContent)
nestedMeta, err := testutils.JSONToMetadata(nestedPluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down Expand Up @@ -310,10 +311,10 @@ func TestBackendFalseNested(t *testing.T) {
nestedPluginJsonContent := []byte(`{
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

nestedMeta, err := utils.JSONToMetadata(nestedPluginJsonContent)
nestedMeta, err := testutils.JSONToMetadata(nestedPluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down
9 changes: 5 additions & 4 deletions pkg/analysis/passes/backenddebug/backenddebug_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,13 @@ import (
"strings"
"testing"

"github.com/stretchr/testify/require"

"github.com/grafana/plugin-validator/pkg/analysis"
"github.com/grafana/plugin-validator/pkg/analysis/passes/archive"
"github.com/grafana/plugin-validator/pkg/analysis/passes/nestedmetadata"
"github.com/grafana/plugin-validator/pkg/testpassinterceptor"
"github.com/grafana/plugin-validator/pkg/utils"
"github.com/stretchr/testify/require"
"github.com/grafana/plugin-validator/pkg/testutils"
)

var (
Expand All @@ -35,7 +36,7 @@ func TestBackendDebug_Correct(t *testing.T) {
pluginJSON: pluginJSONWithoutExecutable,
},
} {
meta, err := utils.JSONToMetadata(tc.pluginJSON)
meta, err := testutils.JSONToMetadata(tc.pluginJSON)
require.NoError(t, err)

t.Run(tc.name, func(t *testing.T) {
Expand Down Expand Up @@ -86,7 +87,7 @@ func TestBackendDebug(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
var interceptor testpassinterceptor.TestPassInterceptor

meta, err := utils.JSONToMetadata(tc.pluginJSON)
meta, err := testutils.JSONToMetadata(tc.pluginJSON)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down
2 changes: 1 addition & 1 deletion pkg/analysis/passes/binarypermissions/binarypermissions.go
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ func run(pass *analysis.Pass) (interface{}, error) {
executableName := filepath.Base(executable)

// walk all files in executableParentDir
var foundBinaries = []string{}
var foundBinaries []string
err := filepath.WalkDir(
executableParentDir,
func(path string, d fs.DirEntry, err error) error {
Expand Down
21 changes: 11 additions & 10 deletions pkg/analysis/passes/binarypermissions/binarypermissions_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,13 @@ import (
"path/filepath"
"testing"

"github.com/stretchr/testify/require"

"github.com/grafana/plugin-validator/pkg/analysis"
"github.com/grafana/plugin-validator/pkg/analysis/passes/archive"
"github.com/grafana/plugin-validator/pkg/analysis/passes/nestedmetadata"
"github.com/grafana/plugin-validator/pkg/testpassinterceptor"
"github.com/grafana/plugin-validator/pkg/utils"
"github.com/stretchr/testify/require"
"github.com/grafana/plugin-validator/pkg/testutils"
)

const pluginId = "test-plugin-panel"
Expand All @@ -24,7 +25,7 @@ func TestBinaryFoundWithCorrectPermissions(t *testing.T) {
"executable": "test-plugin-panel"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

// due to CI running on linux, we need to re-create the correct permissions
Expand Down Expand Up @@ -62,7 +63,7 @@ func TestBinaryNotFound(t *testing.T) {
"type": "panel",
"executable": "test-plugin-panel"
}`)
meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

pass := &analysis.Pass{
Expand Down Expand Up @@ -95,7 +96,7 @@ func TestBinaryFoundNested(t *testing.T) {
"executable": "binaries/test-plugin-panel"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

// due to CI running on linux, we need to re-create the correct permissions
Expand Down Expand Up @@ -133,7 +134,7 @@ func TestBinaryIncorrectPermissions(t *testing.T) {
"executable": "test-plugin-panel"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

// due to CI running on linux, we need to re-create the correct permissions
Expand Down Expand Up @@ -183,15 +184,15 @@ func TestNestedBinaryFoundWithCorrectPermissions(t *testing.T) {
"executable": "test-plugin-app"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

pluginJsonNestedContent := []byte(`{
"id": "` + pluginId + `",
"type": "panel",
"executable": "test-plugin-datasource"
}`)
nestedMeta, err := utils.JSONToMetadata(pluginJsonNestedContent)
nestedMeta, err := testutils.JSONToMetadata(pluginJsonNestedContent)
require.NoError(t, err)

// due to CI running on linux, we need to re-create the correct permissions
Expand Down Expand Up @@ -235,15 +236,15 @@ func TestNestedBinaryFoundWithIncorrectPermissions(t *testing.T) {
"executable": "test-plugin-app"
}`)

meta, err := utils.JSONToMetadata(pluginJsonContent)
meta, err := testutils.JSONToMetadata(pluginJsonContent)
require.NoError(t, err)

pluginJsonNestedContent := []byte(`{
"id": "` + pluginId + `",
"type": "panel",
"executable": "test-plugin-datasource"
}`)
nestedMeta, err := utils.JSONToMetadata(pluginJsonNestedContent)
nestedMeta, err := testutils.JSONToMetadata(pluginJsonNestedContent)
require.NoError(t, err)

// due to CI running on linux, we need to re-create the correct permissions
Expand Down
4 changes: 2 additions & 2 deletions pkg/analysis/passes/brokenlinks/brokenlinks.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ func run(pass *analysis.Pass) (interface{}, error) {
return nil, nil
}

readme, ok := pass.ResultOf[readme.Analyzer].([]byte)
readmeResult, ok := pass.ResultOf[readme.Analyzer].([]byte)
if !ok {
return nil, nil
}
Expand All @@ -68,7 +68,7 @@ func run(pass *analysis.Pass) (interface{}, error) {
})
}

matches := mdLinks.FindAllSubmatch(readme, -1)
matches := mdLinks.FindAllSubmatch(readmeResult, -1)

for _, m := range matches {
path := string(m[1])
Expand Down
3 changes: 2 additions & 1 deletion pkg/analysis/passes/brokenlinks/brokenlinks_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,12 @@ import (
"path/filepath"
"testing"

"github.com/stretchr/testify/require"

"github.com/grafana/plugin-validator/pkg/analysis"
"github.com/grafana/plugin-validator/pkg/analysis/passes/metadata"
"github.com/grafana/plugin-validator/pkg/analysis/passes/readme"
"github.com/grafana/plugin-validator/pkg/testpassinterceptor"
"github.com/stretchr/testify/require"
)

const pluginId = "test-plugin-panel"
Expand Down
5 changes: 3 additions & 2 deletions pkg/analysis/passes/checksum/checksum_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,12 @@ package checksum
import (
"testing"

"github.com/grafana/plugin-validator/pkg/analysis"
"github.com/grafana/plugin-validator/pkg/testpassinterceptor"
"github.com/jarcoal/httpmock"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"

"github.com/grafana/plugin-validator/pkg/analysis"
"github.com/grafana/plugin-validator/pkg/testpassinterceptor"
)

func TestValidMD5Checksum(t *testing.T) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@ import (

"github.com/grafana/plugin-validator/pkg/analysis"
"github.com/grafana/plugin-validator/pkg/testpassinterceptor"
"github.com/grafana/plugin-validator/pkg/utils"
"github.com/grafana/plugin-validator/pkg/testutils"
)

func TestCircularDependencies(t *testing.T) {
t.Run("itself", func(t *testing.T) {
pass, interceptor := newTestPass(filepath.Join("testdata", "itself"))
require.NoError(t, utils.RunDependencies(pass, Analyzer))
require.NoError(t, testutils.RunDependencies(pass, Analyzer))

_, err := Analyzer.Run(pass)
require.NoError(t, err)
Expand All @@ -27,7 +27,7 @@ func TestCircularDependencies(t *testing.T) {

t.Run("with a nested plugin", func(t *testing.T) {
pass, interceptor := newTestPass(filepath.Join("testdata", "nested"))
require.NoError(t, utils.RunDependencies(pass, Analyzer))
require.NoError(t, testutils.RunDependencies(pass, Analyzer))

_, err := Analyzer.Run(pass)
require.NoError(t, err)
Expand All @@ -53,7 +53,7 @@ func TestCircularDependencies(t *testing.T) {

t.Run("with a pinned version", func(t *testing.T) {
pass, interceptor := newTestPass(filepath.Join("testdata", "external-with-version"))
require.NoError(t, utils.RunDependencies(pass, Analyzer))
require.NoError(t, testutils.RunDependencies(pass, Analyzer))

_, err := Analyzer.Run(pass)
require.NoError(t, err)
Expand All @@ -69,7 +69,7 @@ func TestCircularDependencies(t *testing.T) {

t.Run("without a pinned version", func(t *testing.T) {
pass, interceptor := newTestPass(filepath.Join("testdata", "external-without-version"))
require.NoError(t, utils.RunDependencies(pass, Analyzer))
require.NoError(t, testutils.RunDependencies(pass, Analyzer))

_, err := Analyzer.Run(pass)
require.NoError(t, err)
Expand All @@ -96,7 +96,7 @@ func TestCircularDependencies(t *testing.T) {
}

pass, interceptor := newTestPass(filepath.Join("testdata", "external-without-version"))
require.NoError(t, utils.RunDependencies(pass, Analyzer))
require.NoError(t, testutils.RunDependencies(pass, Analyzer))
_, err := Analyzer.Run(pass)
require.NoError(t, err)
require.Len(t, interceptor.Diagnostics, 0)
Expand Down
Loading

0 comments on commit 591f2ce

Please sign in to comment.