Plugins: Update plugin fakes package name (#112503)

update plugin fakes package name
This commit is contained in:
Will Browne
2025-10-16 15:14:05 +01:00
committed by GitHub
parent 1fb7953a95
commit 2223338e34
24 changed files with 219 additions and 219 deletions
@@ -8,14 +8,14 @@ import (
"github.com/grafana/grafana/pkg/plugins"
"github.com/grafana/grafana/pkg/plugins/backendplugin/coreplugin"
"github.com/grafana/grafana/pkg/plugins/log"
"github.com/grafana/grafana/pkg/plugins/manager/fakes"
"github.com/grafana/grafana/pkg/plugins/manager/pluginfakes"
"github.com/stretchr/testify/require"
)
func TestCorePlugin(t *testing.T) {
t.Run("New core plugin with empty opts should return expected values", func(t *testing.T) {
factory := coreplugin.New(backend.ServeOpts{})
p, err := factory("plugin", log.New("test"), fakes.InitializeNoopTracerForTest(), nil)
p, err := factory("plugin", log.New("test"), pluginfakes.InitializeNoopTracerForTest(), nil)
require.NoError(t, err)
require.NotNil(t, p)
require.NoError(t, p.Start(context.Background()))
@@ -48,7 +48,7 @@ func TestCorePlugin(t *testing.T) {
return nil
}),
})
p, err := factory("plugin", log.New("test"), fakes.InitializeNoopTracerForTest(), nil)
p, err := factory("plugin", log.New("test"), pluginfakes.InitializeNoopTracerForTest(), nil)
require.NoError(t, err)
require.NotNil(t, p)
require.NoError(t, p.Start(context.Background()))
+6 -6
View File
@@ -10,14 +10,14 @@ import (
"github.com/grafana/grafana-plugin-sdk-go/backend"
"github.com/grafana/grafana/pkg/plugins"
"github.com/grafana/grafana/pkg/plugins/backendplugin"
"github.com/grafana/grafana/pkg/plugins/manager/fakes"
"github.com/grafana/grafana/pkg/plugins/manager/pluginfakes"
"github.com/grafana/grafana/pkg/util/testutil"
"github.com/stretchr/testify/require"
)
func TestQueryData(t *testing.T) {
t.Run("Empty registry should return not registered error", func(t *testing.T) {
registry := fakes.NewFakePluginRegistry()
registry := pluginfakes.NewFakePluginRegistry()
client := ProvideService(registry)
_, err := client.QueryData(context.Background(), &backend.QueryDataRequest{})
require.Error(t, err)
@@ -64,7 +64,7 @@ func TestQueryData(t *testing.T) {
for _, tc := range tcs {
t.Run(fmt.Sprintf("Plugin client error %q should return expected error", tc.err), func(t *testing.T) {
registry := fakes.NewFakePluginRegistry()
registry := pluginfakes.NewFakePluginRegistry()
p := &plugins.Plugin{
JSONData: plugins.JSONData{
ID: "grafana",
@@ -97,7 +97,7 @@ func TestQueryData(t *testing.T) {
func TestCheckHealth(t *testing.T) {
t.Run("empty plugin registry should return plugin not registered error", func(t *testing.T) {
registry := fakes.NewFakePluginRegistry()
registry := pluginfakes.NewFakePluginRegistry()
client := ProvideService(registry)
_, err := client.CheckHealth(context.Background(), &backend.CheckHealthRequest{})
require.Error(t, err)
@@ -130,7 +130,7 @@ func TestCheckHealth(t *testing.T) {
for _, tc := range tcs {
t.Run(fmt.Sprintf("Plugin client error %q should return expected error", tc.err), func(t *testing.T) {
registry := fakes.NewFakePluginRegistry()
registry := pluginfakes.NewFakePluginRegistry()
p := &plugins.Plugin{
JSONData: plugins.JSONData{
ID: "grafana",
@@ -160,7 +160,7 @@ func TestCheckHealth(t *testing.T) {
func TestIntegrationCallResource(t *testing.T) {
testutil.SkipIntegrationTestInShortMode(t)
registry := fakes.NewFakePluginRegistry()
registry := pluginfakes.NewFakePluginRegistry()
p := &plugins.Plugin{
JSONData: plugins.JSONData{
ID: "pid",
+37 -37
View File
@@ -15,7 +15,7 @@ import (
"github.com/grafana/grafana/pkg/plugins"
"github.com/grafana/grafana/pkg/plugins/config"
"github.com/grafana/grafana/pkg/plugins/log"
"github.com/grafana/grafana/pkg/plugins/manager/fakes"
"github.com/grafana/grafana/pkg/plugins/manager/pluginfakes"
"github.com/grafana/grafana/pkg/plugins/manager/sources"
"github.com/grafana/grafana/pkg/plugins/repo"
"github.com/grafana/grafana/pkg/plugins/storage"
@@ -40,7 +40,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
FileHeader: zip.FileHeader{Name: zipNameV1},
}}}}
loader := &fakes.FakeLoader{
loader := &pluginfakes.FakeLoader{
LoadFunc: func(ctx context.Context, src plugins.PluginSource) ([]*plugins.Plugin, error) {
return []*plugins.Plugin{pluginV1}, nil
},
@@ -49,7 +49,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
pluginRepo := &fakes.FakePluginRepo{
pluginRepo := &pluginfakes.FakePluginRepo{
GetPluginArchiveFunc: func(_ context.Context, id, version string, _ repo.CompatOpts) (*repo.PluginArchive, error) {
require.Equal(t, pluginID, id)
require.Equal(t, v1, version)
@@ -59,7 +59,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
fs := &fakes.FakePluginStorage{
fs := &pluginfakes.FakePluginStorage{
ExtractFunc: func(_ context.Context, id string, _ storage.DirNameGeneratorFunc, z *zip.ReadCloser) (*storage.ExtractedPluginArchive, error) {
require.Equal(t, pluginID, id)
require.Equal(t, mockZipV1, z)
@@ -71,12 +71,12 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
inst := New(&config.PluginManagementCfg{}, fakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &fakes.FakeAuthService{})
inst := New(&config.PluginManagementCfg{}, pluginfakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &pluginfakes.FakeAuthService{})
err := inst.Add(context.Background(), pluginID, v1, testCompatOpts())
require.NoError(t, err)
t.Run("Won't add if already exists", func(t *testing.T) {
inst.pluginRegistry = &fakes.FakePluginRegistry{
inst.pluginRegistry = &pluginfakes.FakePluginRegistry{
Store: map[string]*plugins.Plugin{
pluginID: pluginV1,
},
@@ -90,7 +90,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
t.Run("Add from URL", func(t *testing.T) {
url := "https://grafanaplugins.com"
pluginRepo := &fakes.FakePluginRepo{
pluginRepo := &pluginfakes.FakePluginRepo{
GetPluginArchiveByURLFunc: func(_ context.Context, archiveURL string, _ repo.CompatOpts) (*repo.PluginArchive, error) {
require.Equal(t, pluginID, pluginID)
require.Equal(t, url, archiveURL)
@@ -99,7 +99,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
}, nil
},
}
inst := New(&config.PluginManagementCfg{}, fakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &fakes.FakeAuthService{})
inst := New(&config.PluginManagementCfg{}, pluginfakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &pluginfakes.FakeAuthService{})
err := inst.Add(context.Background(), pluginID, v1, plugins.NewAddOpts(v1, runtime.GOOS, runtime.GOARCH, url))
require.NoError(t, err)
})
@@ -183,14 +183,14 @@ func TestPluginManager_Add_Remove(t *testing.T) {
})
t.Run("Removing an existing plugin", func(t *testing.T) {
inst.pluginRegistry = &fakes.FakePluginRegistry{
inst.pluginRegistry = &pluginfakes.FakePluginRegistry{
Store: map[string]*plugins.Plugin{
pluginID: pluginV1,
},
}
var unloadedPlugins []string
inst.pluginLoader = &fakes.FakeLoader{
inst.pluginLoader = &pluginfakes.FakeLoader{
UnloadFunc: func(_ context.Context, p *plugins.Plugin) (*plugins.Plugin, error) {
unloadedPlugins = append(unloadedPlugins, p.ID)
return p, nil
@@ -203,7 +203,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
require.Equal(t, []string{pluginID}, unloadedPlugins)
t.Run("Won't remove if not exists", func(t *testing.T) {
inst.pluginRegistry = fakes.NewFakePluginRegistry()
inst.pluginRegistry = pluginfakes.NewFakePluginRegistry()
err = inst.Remove(context.Background(), pluginID, v2)
require.Equal(t, plugins.ErrPluginNotInstalled, err)
@@ -216,13 +216,13 @@ func TestPluginManager_Add_Remove(t *testing.T) {
plugin.Info.Version = "1.0.0"
})
reg := &fakes.FakePluginRegistry{
reg := &pluginfakes.FakePluginRegistry{
Store: map[string]*plugins.Plugin{
testPluginID: p,
},
}
pm := New(&config.PluginManagementCfg{}, reg, &fakes.FakeLoader{}, &fakes.FakePluginRepo{}, &fakes.FakePluginStorage{}, storage.SimpleDirNameGeneratorFunc, &fakes.FakeAuthService{})
pm := New(&config.PluginManagementCfg{}, reg, &pluginfakes.FakeLoader{}, &pluginfakes.FakePluginRepo{}, &pluginfakes.FakePluginStorage{}, storage.SimpleDirNameGeneratorFunc, &pluginfakes.FakeAuthService{})
err := pm.Add(context.Background(), p.ID, "3.2.0", testCompatOpts())
require.ErrorIs(t, err, plugins.ErrInstallCorePlugin)
@@ -243,7 +243,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
)
var loadedPaths []string
loader := &fakes.FakeLoader{
loader := &pluginfakes.FakeLoader{
LoadFunc: func(ctx context.Context, src plugins.PluginSource) ([]*plugins.Plugin, error) {
// Check if this is a LocalSource and get its paths
if localSrc, ok := src.(*sources.LocalSource); ok {
@@ -253,7 +253,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
pluginRepo := &fakes.FakePluginRepo{
pluginRepo := &pluginfakes.FakePluginRepo{
GetPluginArchiveFunc: func(_ context.Context, id, version string, _ repo.CompatOpts) (*repo.PluginArchive, error) {
return &repo.PluginArchive{File: &zip.ReadCloser{Reader: zip.Reader{File: []*zip.File{{
FileHeader: zip.FileHeader{Name: fmt.Sprintf("%s.zip", id)},
@@ -261,7 +261,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
fs := &fakes.FakePluginStorage{
fs := &pluginfakes.FakePluginStorage{
ExtractFunc: func(_ context.Context, id string, _ storage.DirNameGeneratorFunc, z *zip.ReadCloser) (*storage.ExtractedPluginArchive, error) {
switch id {
case p1:
@@ -287,7 +287,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
inst := New(&config.PluginManagementCfg{}, fakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &fakes.FakeAuthService{})
inst := New(&config.PluginManagementCfg{}, pluginfakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &pluginfakes.FakeAuthService{})
err := inst.Add(context.Background(), p3, "", testCompatOpts())
require.NoError(t, err)
require.Equal(t, []string{p1Zip, p2Zip, p3Zip}, loadedPaths)
@@ -300,7 +300,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
)
var loadedPaths []string
loader := &fakes.FakeLoader{
loader := &pluginfakes.FakeLoader{
LoadFunc: func(ctx context.Context, src plugins.PluginSource) ([]*plugins.Plugin, error) {
// Check if this is a LocalSource and get its paths
if localSrc, ok := src.(*sources.LocalSource); ok {
@@ -310,7 +310,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
pluginRepo := &fakes.FakePluginRepo{
pluginRepo := &pluginfakes.FakePluginRepo{
GetPluginArchiveFunc: func(_ context.Context, id, version string, _ repo.CompatOpts) (*repo.PluginArchive, error) {
return &repo.PluginArchive{File: &zip.ReadCloser{Reader: zip.Reader{File: []*zip.File{{
FileHeader: zip.FileHeader{Name: fmt.Sprintf("%s.zip", id)},
@@ -318,7 +318,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
fs := &fakes.FakePluginStorage{
fs := &pluginfakes.FakePluginStorage{
ExtractFunc: func(_ context.Context, id string, _ storage.DirNameGeneratorFunc, z *zip.ReadCloser) (*storage.ExtractedPluginArchive, error) {
switch id {
case p1:
@@ -339,7 +339,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
inst := New(&config.PluginManagementCfg{}, fakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &fakes.FakeAuthService{})
inst := New(&config.PluginManagementCfg{}, pluginfakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &pluginfakes.FakeAuthService{})
err := inst.Add(context.Background(), p1, "", testCompatOpts())
require.NoError(t, err)
require.Equal(t, []string{p2Zip, p1Zip}, loadedPaths)
@@ -347,14 +347,14 @@ func TestPluginManager_Add_Remove(t *testing.T) {
t.Run("Plugin can successfully install even if dependency plugin is already installed", func(t *testing.T) {
const pluginDependencyID = "test-plugin-dependency"
reg := &fakes.FakePluginRegistry{
reg := &pluginfakes.FakePluginRegistry{
Store: map[string]*plugins.Plugin{
pluginDependencyID: createPlugin(t, pluginDependencyID, plugins.ClassExternal, false, false),
},
}
var loadedPaths []string
loader := &fakes.FakeLoader{
loader := &pluginfakes.FakeLoader{
LoadFunc: func(ctx context.Context, src plugins.PluginSource) ([]*plugins.Plugin, error) {
// Check if this is a LocalSource and get its paths
if localSrc, ok := src.(*sources.LocalSource); ok {
@@ -364,7 +364,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
pluginRepo := &fakes.FakePluginRepo{
pluginRepo := &pluginfakes.FakePluginRepo{
GetPluginArchiveFunc: func(_ context.Context, id, version string, _ repo.CompatOpts) (*repo.PluginArchive, error) {
return &repo.PluginArchive{File: &zip.ReadCloser{Reader: zip.Reader{File: []*zip.File{{
FileHeader: zip.FileHeader{Name: fmt.Sprintf("%s.zip", id)},
@@ -372,7 +372,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
fs := &fakes.FakePluginStorage{
fs := &pluginfakes.FakePluginStorage{
ExtractFunc: func(_ context.Context, id string, _ storage.DirNameGeneratorFunc, z *zip.ReadCloser) (*storage.ExtractedPluginArchive, error) {
switch id {
case testPluginID:
@@ -387,7 +387,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
inst := New(&config.PluginManagementCfg{}, reg, loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &fakes.FakeAuthService{})
inst := New(&config.PluginManagementCfg{}, reg, loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &pluginfakes.FakeAuthService{})
err := inst.Add(context.Background(), testPluginID, "", testCompatOpts())
require.NoError(t, err)
require.Equal(t, []string{"test-plugin.zip"}, loadedPaths)
@@ -401,7 +401,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
)
var loadedPaths []string
loader := &fakes.FakeLoader{
loader := &pluginfakes.FakeLoader{
LoadFunc: func(ctx context.Context, src plugins.PluginSource) ([]*plugins.Plugin, error) {
// Check if this is a LocalSource and get its paths
if localSrc, ok := src.(*sources.LocalSource); ok {
@@ -415,7 +415,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
urlMethodCalled := false
catalogMethodCalled := false
pluginRepo := &fakes.FakePluginRepo{
pluginRepo := &pluginfakes.FakePluginRepo{
GetPluginArchiveByURLFunc: func(_ context.Context, url string, _ repo.CompatOpts) (*repo.PluginArchive, error) {
urlMethodCalled = true
require.Equal(t, parentURL, url, "URL method should only be called for parent plugin")
@@ -432,7 +432,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
fs := &fakes.FakePluginStorage{
fs := &pluginfakes.FakePluginStorage{
ExtractFunc: func(_ context.Context, id string, _ storage.DirNameGeneratorFunc, z *zip.ReadCloser) (*storage.ExtractedPluginArchive, error) {
switch id {
case parentPluginID:
@@ -452,7 +452,7 @@ func TestPluginManager_Add_Remove(t *testing.T) {
},
}
inst := New(&config.PluginManagementCfg{}, fakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &fakes.FakeAuthService{})
inst := New(&config.PluginManagementCfg{}, pluginfakes.NewFakePluginRegistry(), loader, pluginRepo, fs, storage.SimpleDirNameGeneratorFunc, &pluginfakes.FakeAuthService{})
err := inst.Add(context.Background(), parentPluginID, "", plugins.NewAddOpts("10.0.0", runtime.GOOS, runtime.GOARCH, parentURL))
require.NoError(t, err)
require.Equal(t, []string{"dependency-plugin.zip", "parent-plugin.zip"}, loadedPaths)
@@ -474,7 +474,7 @@ func createPlugin(t *testing.T, pluginID string, class plugins.Class, managed, b
}
p.SetLogger(log.NewTestLogger())
if p.Backend {
p.RegisterClient(&fakes.FakePluginClient{
p.RegisterClient(&pluginfakes.FakePluginClient{
ID: pluginID,
Managed: managed,
Log: p.Logger(),
@@ -517,13 +517,13 @@ func TestPluginInstaller_Removal(t *testing.T) {
plugin.FS = localFS
})
registry := &fakes.FakePluginRegistry{
registry := &pluginfakes.FakePluginRegistry{
Store: map[string]*plugins.Plugin{
"localfs-plugin": pluginV1,
},
}
loader := &fakes.FakeLoader{
loader := &pluginfakes.FakeLoader{
UnloadFunc: func(_ context.Context, p *plugins.Plugin) (*plugins.Plugin, error) {
return p, nil
},
@@ -532,7 +532,7 @@ func TestPluginInstaller_Removal(t *testing.T) {
_, err = os.Stat(pluginDir)
require.NoError(t, err)
inst := New(&config.PluginManagementCfg{}, registry, loader, &fakes.FakePluginRepo{}, &fakes.FakePluginStorage{}, storage.SimpleDirNameGeneratorFunc, &fakes.FakeAuthService{})
inst := New(&config.PluginManagementCfg{}, registry, loader, &pluginfakes.FakePluginRepo{}, &pluginfakes.FakePluginStorage{}, storage.SimpleDirNameGeneratorFunc, &pluginfakes.FakeAuthService{})
err = inst.Remove(context.Background(), "localfs-plugin", "1.0.0")
require.NoError(t, err)
@@ -565,13 +565,13 @@ func TestPluginInstaller_Removal(t *testing.T) {
plugin.FS = staticFS
})
registry := &fakes.FakePluginRegistry{
registry := &pluginfakes.FakePluginRegistry{
Store: map[string]*plugins.Plugin{
"staticfs-plugin": pluginV1,
},
}
loader := &fakes.FakeLoader{
loader := &pluginfakes.FakeLoader{
UnloadFunc: func(_ context.Context, p *plugins.Plugin) (*plugins.Plugin, error) {
return p, nil
},
@@ -580,7 +580,7 @@ func TestPluginInstaller_Removal(t *testing.T) {
_, err = os.Stat(pluginDir)
require.NoError(t, err)
inst := New(&config.PluginManagementCfg{}, registry, loader, &fakes.FakePluginRepo{}, &fakes.FakePluginStorage{}, storage.SimpleDirNameGeneratorFunc, &fakes.FakeAuthService{})
inst := New(&config.PluginManagementCfg{}, registry, loader, &pluginfakes.FakePluginRepo{}, &pluginfakes.FakePluginStorage{}, storage.SimpleDirNameGeneratorFunc, &pluginfakes.FakeAuthService{})
err = inst.Remove(context.Background(), "staticfs-plugin", "1.0.0")
require.NoError(t, err)
+24 -24
View File
@@ -13,12 +13,12 @@ import (
"github.com/grafana/grafana/pkg/plugins"
"github.com/grafana/grafana/pkg/plugins/config"
"github.com/grafana/grafana/pkg/plugins/manager/fakes"
"github.com/grafana/grafana/pkg/plugins/manager/pipeline/bootstrap"
"github.com/grafana/grafana/pkg/plugins/manager/pipeline/discovery"
"github.com/grafana/grafana/pkg/plugins/manager/pipeline/initialization"
"github.com/grafana/grafana/pkg/plugins/manager/pipeline/termination"
"github.com/grafana/grafana/pkg/plugins/manager/pipeline/validation"
"github.com/grafana/grafana/pkg/plugins/manager/pluginfakes"
"github.com/grafana/grafana/pkg/plugins/manager/sources"
"github.com/grafana/grafana/pkg/services/org"
"github.com/grafana/grafana/pkg/services/pluginsintegration/pluginerrs"
@@ -452,7 +452,7 @@ func TestLoader_Load(t *testing.T) {
}
t.Run("Simple", func(t *testing.T) {
src := &fakes.FakePluginSource{
src := &pluginfakes.FakePluginSource{
PluginClassFunc: func(ctx context.Context) plugins.Class {
return plugins.ClassExternal
},
@@ -472,13 +472,13 @@ func TestLoader_Load(t *testing.T) {
var steps []string
l := New(
zeroCfg,
&fakes.FakeDiscoverer{
&pluginfakes.FakeDiscoverer{
DiscoverFunc: func(ctx context.Context, s plugins.PluginSource) ([]*plugins.FoundBundle, error) {
require.Equal(t, src, s)
steps = append(steps, "discover")
return []*plugins.FoundBundle{{Primary: plugins.FoundPlugin{JSONData: pluginJSON}}}, nil
},
}, &fakes.FakeBootstrapper{
}, &pluginfakes.FakeBootstrapper{
BootstrapFunc: func(ctx context.Context, s plugins.PluginSource, b *plugins.FoundBundle) ([]*plugins.Plugin, error) {
require.Equal(t, b.Primary.JSONData, pluginJSON)
require.Equal(t, src, s)
@@ -486,19 +486,19 @@ func TestLoader_Load(t *testing.T) {
steps = append(steps, "bootstrap")
return []*plugins.Plugin{plugin}, nil
},
}, &fakes.FakeValidator{ValidateFunc: func(ctx context.Context, ps *plugins.Plugin) error {
}, &pluginfakes.FakeValidator{ValidateFunc: func(ctx context.Context, ps *plugins.Plugin) error {
require.Equal(t, plugin, ps)
steps = append(steps, "validate")
return nil
}},
&fakes.FakeInitializer{
&pluginfakes.FakeInitializer{
IntializeFunc: func(ctx context.Context, ps *plugins.Plugin) (*plugins.Plugin, error) {
require.Equal(t, ps.JSONData, pluginJSON)
steps = append(steps, "initialize")
return ps, nil
},
}, &fakes.FakeTerminator{}, et)
}, &pluginfakes.FakeTerminator{}, et)
got, err := l.Load(context.Background(), src)
require.NoError(t, err)
@@ -507,7 +507,7 @@ func TestLoader_Load(t *testing.T) {
})
t.Run("With error", func(t *testing.T) {
src := &fakes.FakePluginSource{
src := &pluginfakes.FakePluginSource{
PluginClassFunc: func(ctx context.Context) plugins.Class {
return plugins.ClassExternal
},
@@ -527,13 +527,13 @@ func TestLoader_Load(t *testing.T) {
var steps []string
l := New(
zeroCfg,
&fakes.FakeDiscoverer{
&pluginfakes.FakeDiscoverer{
DiscoverFunc: func(ctx context.Context, s plugins.PluginSource) ([]*plugins.FoundBundle, error) {
require.Equal(t, src, s)
steps = append(steps, "discover")
return []*plugins.FoundBundle{{Primary: plugins.FoundPlugin{JSONData: pluginJSON}}}, nil
},
}, &fakes.FakeBootstrapper{
}, &pluginfakes.FakeBootstrapper{
BootstrapFunc: func(ctx context.Context, s plugins.PluginSource, b *plugins.FoundBundle) ([]*plugins.Plugin, error) {
require.Equal(t, b.Primary.JSONData, pluginJSON)
require.Equal(t, src, s)
@@ -541,19 +541,19 @@ func TestLoader_Load(t *testing.T) {
steps = append(steps, "bootstrap")
return []*plugins.Plugin{plugin}, nil
},
}, &fakes.FakeValidator{ValidateFunc: func(ctx context.Context, ps *plugins.Plugin) error {
}, &pluginfakes.FakeValidator{ValidateFunc: func(ctx context.Context, ps *plugins.Plugin) error {
require.Equal(t, plugin, ps)
steps = append(steps, "validate")
return errors.New("validation error")
}},
&fakes.FakeInitializer{
&pluginfakes.FakeInitializer{
IntializeFunc: func(ctx context.Context, ps *plugins.Plugin) (*plugins.Plugin, error) {
require.Equal(t, ps.JSONData, pluginJSON)
steps = append(steps, "initialize")
return ps, nil
},
}, &fakes.FakeTerminator{}, et)
}, &pluginfakes.FakeTerminator{}, et)
got, err := l.Load(context.Background(), src)
require.NoError(t, err)
@@ -566,7 +566,7 @@ func TestLoader_Load(t *testing.T) {
})
t.Run("Cleans up a previous error", func(t *testing.T) {
src := &fakes.FakePluginSource{
src := &pluginfakes.FakePluginSource{
PluginClassFunc: func(ctx context.Context) plugins.Class {
return plugins.ClassExternal
},
@@ -587,13 +587,13 @@ func TestLoader_Load(t *testing.T) {
var steps []string
l := New(
zeroCfg,
&fakes.FakeDiscoverer{
&pluginfakes.FakeDiscoverer{
DiscoverFunc: func(ctx context.Context, s plugins.PluginSource) ([]*plugins.FoundBundle, error) {
require.Equal(t, src, s)
steps = append(steps, "discover")
return []*plugins.FoundBundle{{Primary: plugins.FoundPlugin{JSONData: pluginJSON}}}, nil
},
}, &fakes.FakeBootstrapper{
}, &pluginfakes.FakeBootstrapper{
BootstrapFunc: func(ctx context.Context, s plugins.PluginSource, b *plugins.FoundBundle) ([]*plugins.Plugin, error) {
require.Equal(t, b.Primary.JSONData, pluginJSON)
require.Equal(t, src, s)
@@ -601,19 +601,19 @@ func TestLoader_Load(t *testing.T) {
steps = append(steps, "bootstrap")
return []*plugins.Plugin{plugin}, nil
},
}, &fakes.FakeValidator{ValidateFunc: func(ctx context.Context, ps *plugins.Plugin) error {
}, &pluginfakes.FakeValidator{ValidateFunc: func(ctx context.Context, ps *plugins.Plugin) error {
require.Equal(t, plugin, ps)
steps = append(steps, "validate")
return nil
}},
&fakes.FakeInitializer{
&pluginfakes.FakeInitializer{
IntializeFunc: func(ctx context.Context, ps *plugins.Plugin) (*plugins.Plugin, error) {
require.Equal(t, ps.JSONData, pluginJSON)
steps = append(steps, "initialize")
return ps, nil
},
}, &fakes.FakeTerminator{}, et)
}, &pluginfakes.FakeTerminator{}, et)
got, err := l.Load(context.Background(), src)
require.NoError(t, err)
@@ -644,11 +644,11 @@ func TestLoader_Unload(t *testing.T) {
for _, tc := range tcs {
l := New(
&config.PluginManagementCfg{},
&fakes.FakeDiscoverer{},
&fakes.FakeBootstrapper{},
&fakes.FakeValidator{},
&fakes.FakeInitializer{},
&fakes.FakeTerminator{
&pluginfakes.FakeDiscoverer{},
&pluginfakes.FakeBootstrapper{},
&pluginfakes.FakeValidator{},
&pluginfakes.FakeInitializer{},
&pluginfakes.FakeTerminator{
TerminateFunc: func(ctx context.Context, p *plugins.Plugin) (*plugins.Plugin, error) {
require.Equal(t, plugin, p)
return p, tc.expectedErr
@@ -9,7 +9,7 @@ import (
"github.com/grafana/grafana/pkg/plugins"
"github.com/grafana/grafana/pkg/plugins/config"
"github.com/grafana/grafana/pkg/plugins/log"
"github.com/grafana/grafana/pkg/plugins/manager/fakes"
"github.com/grafana/grafana/pkg/plugins/manager/pluginfakes"
)
func TestSetDefaultNavURL(t *testing.T) {
@@ -98,7 +98,7 @@ func TestTemplateDecorateFunc(t *testing.T) {
func Test_configureAppChildPlugin(t *testing.T) {
t.Run("Child plugin will inherit parent version information when version is empty", func(t *testing.T) {
child := &plugins.Plugin{
FS: fakes.NewFakePluginFS("c:\\grafana\\public\\app\\plugins\\app\\testdata-app\\datasources\\datasource"),
FS: pluginfakes.NewFakePluginFS("c:\\grafana\\public\\app\\plugins\\app\\testdata-app\\datasources\\datasource"),
}
parent := &plugins.Plugin{
JSONData: plugins.JSONData{
@@ -107,7 +107,7 @@ func Test_configureAppChildPlugin(t *testing.T) {
Info: plugins.Info{Version: "1.0.0"},
},
Class: plugins.ClassCore,
FS: fakes.NewFakePluginFS("c:\\grafana\\public\\app\\plugins\\app\\testdata-app"),
FS: pluginfakes.NewFakePluginFS("c:\\grafana\\public\\app\\plugins\\app\\testdata-app"),
BaseURL: "public/app/plugins/app/testdata-app",
}
@@ -119,7 +119,7 @@ func Test_configureAppChildPlugin(t *testing.T) {
t.Run("Child plugin will not inherit parent version information when version is non-empty", func(t *testing.T) {
child := &plugins.Plugin{
FS: fakes.NewFakePluginFS("/plugins/parent-app/child-panel"),
FS: pluginfakes.NewFakePluginFS("/plugins/parent-app/child-panel"),
JSONData: plugins.JSONData{
Info: plugins.Info{Version: "2.0.2"},
},
@@ -131,7 +131,7 @@ func Test_configureAppChildPlugin(t *testing.T) {
Info: plugins.Info{Version: "2.0.0"},
},
Class: plugins.ClassExternal,
FS: fakes.NewFakePluginFS("/plugins/parent-app"),
FS: pluginfakes.NewFakePluginFS("/plugins/parent-app"),
BaseURL: "plugins/parent-app",
}
@@ -7,7 +7,7 @@ import (
"github.com/grafana/grafana/pkg/plugins"
"github.com/grafana/grafana/pkg/plugins/backendplugin"
"github.com/grafana/grafana/pkg/plugins/log"
"github.com/grafana/grafana/pkg/plugins/manager/fakes"
"github.com/grafana/grafana/pkg/plugins/manager/pluginfakes"
"github.com/stretchr/testify/require"
"go.opentelemetry.io/otel/trace"
)
@@ -29,7 +29,7 @@ func TestInitializer_Initialize(t *testing.T) {
Class: plugins.ClassCore,
}
stepFunc := BackendClientInitStep(&fakeEnvVarsProvider{}, &fakeBackendProvider{plugin: p}, fakes.InitializeNoopTracerForTest())
stepFunc := BackendClientInitStep(&fakeEnvVarsProvider{}, &fakeBackendProvider{plugin: p}, pluginfakes.InitializeNoopTracerForTest())
var err error
p, err = stepFunc(context.Background(), p)
@@ -53,7 +53,7 @@ func TestInitializer_Initialize(t *testing.T) {
Class: plugins.ClassExternal,
}
stepFunc := BackendClientInitStep(&fakeEnvVarsProvider{}, &fakeBackendProvider{plugin: p}, fakes.InitializeNoopTracerForTest())
stepFunc := BackendClientInitStep(&fakeEnvVarsProvider{}, &fakeBackendProvider{plugin: p}, pluginfakes.InitializeNoopTracerForTest())
var err error
p, err = stepFunc(context.Background(), p)
@@ -73,7 +73,7 @@ func TestInitializer_Initialize(t *testing.T) {
i := BackendClientInitStep(&fakeEnvVarsProvider{}, &fakeBackendProvider{
plugin: p,
}, fakes.InitializeNoopTracerForTest())
}, pluginfakes.InitializeNoopTracerForTest())
var err error
p, err = i(context.Background(), p)
@@ -1,4 +1,4 @@
package fakes
package pluginfakes
import (
"archive/zip"
+5 -5
View File
@@ -10,7 +10,7 @@ import (
"github.com/grafana/grafana/pkg/plugins"
"github.com/grafana/grafana/pkg/plugins/backendplugin"
"github.com/grafana/grafana/pkg/plugins/log"
"github.com/grafana/grafana/pkg/plugins/manager/fakes"
"github.com/grafana/grafana/pkg/plugins/manager/pluginfakes"
)
func TestProcessManager_Start(t *testing.T) {
@@ -62,7 +62,7 @@ func TestProcessManager_Start(t *testing.T) {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
bp := fakes.NewFakeBackendPlugin(tc.managed)
bp := pluginfakes.NewFakeBackendPlugin(tc.managed)
p := createPlugin(t, bp, func(plugin *plugins.Plugin) {
plugin.Backend = tc.backend
plugin.Error = tc.Error
@@ -85,7 +85,7 @@ func TestProcessManager_Start(t *testing.T) {
t.Run("Won't stop the plugin if the context is cancelled", func(t *testing.T) {
t.Parallel()
bp := fakes.NewFakeBackendPlugin(true)
bp := pluginfakes.NewFakeBackendPlugin(true)
p := createPlugin(t, bp, func(plugin *plugins.Plugin) {
plugin.Backend = true
})
@@ -113,7 +113,7 @@ func TestProcessManager_Stop(t *testing.T) {
pluginID := "test-datasource"
bp := fakes.NewFakeBackendPlugin(true)
bp := pluginfakes.NewFakeBackendPlugin(true)
p := createPlugin(t, bp, func(plugin *plugins.Plugin) {
plugin.ID = pluginID
plugin.Backend = true
@@ -134,7 +134,7 @@ func TestProcessManager_ManagedBackendPluginLifecycle(t *testing.T) {
t.Run("When plugin process is killed, the process is restarted", func(t *testing.T) {
t.Parallel()
bp := fakes.NewFakeBackendPlugin(true)
bp := pluginfakes.NewFakeBackendPlugin(true)
p := createPlugin(t, bp, func(plugin *plugins.Plugin) {
plugin.Backend = true
})
@@ -15,7 +15,7 @@ import (
"github.com/grafana/grafana/pkg/plugins"
"github.com/grafana/grafana/pkg/plugins/config"
"github.com/grafana/grafana/pkg/plugins/manager/fakes"
"github.com/grafana/grafana/pkg/plugins/manager/pluginfakes"
"github.com/grafana/grafana/pkg/plugins/manager/signature/statickey"
)
@@ -164,7 +164,7 @@ func TestCalculate(t *testing.T) {
for _, tc := range tcs {
basePath := filepath.Join(parentDir, "testdata/non-pvt-with-root-url/plugin")
s := provideTestServiceWithConfig(&config.PluginManagementCfg{GrafanaAppURL: tc.appURL})
sig, err := s.Calculate(context.Background(), &fakes.FakePluginSource{
sig, err := s.Calculate(context.Background(), &pluginfakes.FakePluginSource{
PluginClassFunc: func(ctx context.Context) plugins.Class {
return plugins.ClassExternal
},
@@ -192,7 +192,7 @@ func TestCalculate(t *testing.T) {
runningWindows = true
s := provideDefaultTestService()
sig, err := s.Calculate(context.Background(), &fakes.FakePluginSource{
sig, err := s.Calculate(context.Background(), &pluginfakes.FakePluginSource{
PluginClassFunc: func(ctx context.Context) plugins.Class {
return plugins.ClassExternal
},
@@ -260,7 +260,7 @@ func TestCalculate(t *testing.T) {
require.NoError(t, err)
pfs, err = newPathSeparatorOverrideFS(string(tc.platform.separator), pfs)
require.NoError(t, err)
sig, err := s.Calculate(context.Background(), &fakes.FakePluginSource{
sig, err := s.Calculate(context.Background(), &pluginfakes.FakePluginSource{
PluginClassFunc: func(ctx context.Context) plugins.Class {
return plugins.ClassExternal
},