Datasources: Add service function to get by group, name, and namespace (#113066)

This commit is contained in:
Stephanie Hingtgen
2025-10-28 16:43:03 +00:00
committed by GitHub
parent 147ff4279b
commit 6a3dfacc95
6 changed files with 111 additions and 0 deletions
@@ -17,6 +17,7 @@ import (
"github.com/stretchr/testify/require"
"gopkg.in/ini.v1"
"github.com/grafana/authlib/types"
"github.com/grafana/grafana-plugin-sdk-go/backend"
sdkhttpclient "github.com/grafana/grafana-plugin-sdk-go/backend/httpclient"
"github.com/grafana/grafana/pkg/components/simplejson"
@@ -63,6 +64,19 @@ func (d *dataSourceMockRetriever) GetDataSource(ctx context.Context, query *data
return nil, datasources.ErrDataSourceNotFound
}
func (d *dataSourceMockRetriever) GetDataSourceInNamespace(ctx context.Context, namespace, name, group string) (*datasources.DataSource, error) {
ns, err := types.ParseNamespace(namespace)
if err != nil {
return nil, err
}
for _, dataSource := range d.res {
if name == dataSource.UID && ns.OrgID == dataSource.OrgID && group == dataSource.Type {
return dataSource, nil
}
}
return nil, datasources.ErrDataSourceNotFound
}
func TestIntegrationService_AddDataSource(t *testing.T) {
testutil.SkipIntegrationTestInShortMode(t)