|
|
|
@ -1,6 +1,7 @@ |
|
|
|
|
package routes |
|
|
|
|
|
|
|
|
|
import ( |
|
|
|
|
"context" |
|
|
|
|
"fmt" |
|
|
|
|
"net/http" |
|
|
|
|
"net/http/httptest" |
|
|
|
@ -24,7 +25,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
|
|
|
|
|
mockFeatures := mocks.MockFeatures{} |
|
|
|
|
mockFeatures.On("IsEnabled", featuremgmt.FlagCloudWatchCrossAccountQuerying).Return(false) |
|
|
|
|
reqCtxFunc := func(pluginCtx backend.PluginContext, region string) (reqCtx models.RequestContext, err error) { |
|
|
|
|
reqCtxFunc := func(_ context.Context, pluginCtx backend.PluginContext, region string) (reqCtx models.RequestContext, err error) { |
|
|
|
|
return models.RequestContext{Features: &mockFeatures}, err |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -37,7 +38,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
}, |
|
|
|
|
AccountId: utils.Pointer("111"), |
|
|
|
|
}}, nil) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -68,7 +69,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
AccountId: utils.Pointer("222"), |
|
|
|
|
}, |
|
|
|
|
}, nil) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -99,7 +100,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
t.Run("returns error when both logGroupPrefix and logGroup Pattern are provided", func(t *testing.T) { |
|
|
|
|
mockLogsService := mocks.LogsService{} |
|
|
|
|
mockLogsService.On("GetLogGroups", mock.Anything).Return([]resources.ResourceResponse[resources.LogGroup]{}, nil) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -115,7 +116,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
t.Run("passes default log group limit and nil for logGroupNamePrefix, accountId, and logGroupPattern", func(t *testing.T) { |
|
|
|
|
mockLogsService := mocks.LogsService{} |
|
|
|
|
mockLogsService.On("GetLogGroups", mock.Anything).Return([]resources.ResourceResponse[resources.LogGroup]{}, nil) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -135,7 +136,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
t.Run("passes default log group limit and nil for logGroupNamePrefix when both are absent", func(t *testing.T) { |
|
|
|
|
mockLogsService := mocks.LogsService{} |
|
|
|
|
mockLogsService.On("GetLogGroups", mock.Anything).Return([]resources.ResourceResponse[resources.LogGroup]{}, nil) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -153,7 +154,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
t.Run("passes log group limit from query parameter", func(t *testing.T) { |
|
|
|
|
mockLogsService := mocks.LogsService{} |
|
|
|
|
mockLogsService.On("GetLogGroups", mock.Anything).Return([]resources.ResourceResponse[resources.LogGroup]{}, nil) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -170,7 +171,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
t.Run("passes logGroupPrefix from query parameter", func(t *testing.T) { |
|
|
|
|
mockLogsService := mocks.LogsService{} |
|
|
|
|
mockLogsService.On("GetLogGroups", mock.Anything).Return([]resources.ResourceResponse[resources.LogGroup]{}, nil) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -188,7 +189,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
t.Run("passes logGroupPattern from query parameter", func(t *testing.T) { |
|
|
|
|
mockLogsService := mocks.LogsService{} |
|
|
|
|
mockLogsService.On("GetLogGroups", mock.Anything).Return([]resources.ResourceResponse[resources.LogGroup]{}, nil) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -206,7 +207,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
t.Run("passes logGroupPattern from query parameter", func(t *testing.T) { |
|
|
|
|
mockLogsService := mocks.LogsService{} |
|
|
|
|
mockLogsService.On("GetLogGroups", mock.Anything).Return([]resources.ResourceResponse[resources.LogGroup]{}, nil) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -225,7 +226,7 @@ func TestLogGroupsRoute(t *testing.T) { |
|
|
|
|
mockLogsService := mocks.LogsService{} |
|
|
|
|
mockLogsService.On("GetLogGroups", mock.Anything). |
|
|
|
|
Return([]resources.ResourceResponse[resources.LogGroup]{}, fmt.Errorf("some error")) |
|
|
|
|
newLogGroupsService = func(pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
newLogGroupsService = func(_ context.Context, pluginCtx backend.PluginContext, reqCtxFactory models.RequestContextFactoryFunc, region string) (models.LogGroupsProvider, error) { |
|
|
|
|
return &mockLogsService, nil |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|