...
AWS SDK for Go API Reference
import "github.com/aws/aws-sdk-go/service/redshiftserverless/redshiftserverlessiface"
Overview
Index

Overview ▾

Package redshiftserverlessiface provides an interface to enable mocking the Redshift Serverless service client for testing your code.

It is important to note that this interface will have breaking changes when the service model is updated and adds new API operations, paginators, and waiters.

Index ▾

Package files

interface.go

type RedshiftServerlessAPI

type RedshiftServerlessAPI interface {
    ConvertRecoveryPointToSnapshot(*redshiftserverless.ConvertRecoveryPointToSnapshotInput) (*redshiftserverless.ConvertRecoveryPointToSnapshotOutput, error)
    ConvertRecoveryPointToSnapshotWithContext(aws.Context, *redshiftserverless.ConvertRecoveryPointToSnapshotInput, ...request.Option) (*redshiftserverless.ConvertRecoveryPointToSnapshotOutput, error)
    ConvertRecoveryPointToSnapshotRequest(*redshiftserverless.ConvertRecoveryPointToSnapshotInput) (*request.Request, *redshiftserverless.ConvertRecoveryPointToSnapshotOutput)

    CreateEndpointAccess(*redshiftserverless.CreateEndpointAccessInput) (*redshiftserverless.CreateEndpointAccessOutput, error)
    CreateEndpointAccessWithContext(aws.Context, *redshiftserverless.CreateEndpointAccessInput, ...request.Option) (*redshiftserverless.CreateEndpointAccessOutput, error)
    CreateEndpointAccessRequest(*redshiftserverless.CreateEndpointAccessInput) (*request.Request, *redshiftserverless.CreateEndpointAccessOutput)

    CreateNamespace(*redshiftserverless.CreateNamespaceInput) (*redshiftserverless.CreateNamespaceOutput, error)
    CreateNamespaceWithContext(aws.Context, *redshiftserverless.CreateNamespaceInput, ...request.Option) (*redshiftserverless.CreateNamespaceOutput, error)
    CreateNamespaceRequest(*redshiftserverless.CreateNamespaceInput) (*request.Request, *redshiftserverless.CreateNamespaceOutput)

    CreateSnapshot(*redshiftserverless.CreateSnapshotInput) (*redshiftserverless.CreateSnapshotOutput, error)
    CreateSnapshotWithContext(aws.Context, *redshiftserverless.CreateSnapshotInput, ...request.Option) (*redshiftserverless.CreateSnapshotOutput, error)
    CreateSnapshotRequest(*redshiftserverless.CreateSnapshotInput) (*request.Request, *redshiftserverless.CreateSnapshotOutput)

    CreateUsageLimit(*redshiftserverless.CreateUsageLimitInput) (*redshiftserverless.CreateUsageLimitOutput, error)
    CreateUsageLimitWithContext(aws.Context, *redshiftserverless.CreateUsageLimitInput, ...request.Option) (*redshiftserverless.CreateUsageLimitOutput, error)
    CreateUsageLimitRequest(*redshiftserverless.CreateUsageLimitInput) (*request.Request, *redshiftserverless.CreateUsageLimitOutput)

    CreateWorkgroup(*redshiftserverless.CreateWorkgroupInput) (*redshiftserverless.CreateWorkgroupOutput, error)
    CreateWorkgroupWithContext(aws.Context, *redshiftserverless.CreateWorkgroupInput, ...request.Option) (*redshiftserverless.CreateWorkgroupOutput, error)
    CreateWorkgroupRequest(*redshiftserverless.CreateWorkgroupInput) (*request.Request, *redshiftserverless.CreateWorkgroupOutput)

    DeleteEndpointAccess(*redshiftserverless.DeleteEndpointAccessInput) (*redshiftserverless.DeleteEndpointAccessOutput, error)
    DeleteEndpointAccessWithContext(aws.Context, *redshiftserverless.DeleteEndpointAccessInput, ...request.Option) (*redshiftserverless.DeleteEndpointAccessOutput, error)
    DeleteEndpointAccessRequest(*redshiftserverless.DeleteEndpointAccessInput) (*request.Request, *redshiftserverless.DeleteEndpointAccessOutput)

    DeleteNamespace(*redshiftserverless.DeleteNamespaceInput) (*redshiftserverless.DeleteNamespaceOutput, error)
    DeleteNamespaceWithContext(aws.Context, *redshiftserverless.DeleteNamespaceInput, ...request.Option) (*redshiftserverless.DeleteNamespaceOutput, error)
    DeleteNamespaceRequest(*redshiftserverless.DeleteNamespaceInput) (*request.Request, *redshiftserverless.DeleteNamespaceOutput)

    DeleteResourcePolicy(*redshiftserverless.DeleteResourcePolicyInput) (*redshiftserverless.DeleteResourcePolicyOutput, error)
    DeleteResourcePolicyWithContext(aws.Context, *redshiftserverless.DeleteResourcePolicyInput, ...request.Option) (*redshiftserverless.DeleteResourcePolicyOutput, error)
    DeleteResourcePolicyRequest(*redshiftserverless.DeleteResourcePolicyInput) (*request.Request, *redshiftserverless.DeleteResourcePolicyOutput)

    DeleteSnapshot(*redshiftserverless.DeleteSnapshotInput) (*redshiftserverless.DeleteSnapshotOutput, error)
    DeleteSnapshotWithContext(aws.Context, *redshiftserverless.DeleteSnapshotInput, ...request.Option) (*redshiftserverless.DeleteSnapshotOutput, error)
    DeleteSnapshotRequest(*redshiftserverless.DeleteSnapshotInput) (*request.Request, *redshiftserverless.DeleteSnapshotOutput)

    DeleteUsageLimit(*redshiftserverless.DeleteUsageLimitInput) (*redshiftserverless.DeleteUsageLimitOutput, error)
    DeleteUsageLimitWithContext(aws.Context, *redshiftserverless.DeleteUsageLimitInput, ...request.Option) (*redshiftserverless.DeleteUsageLimitOutput, error)
    DeleteUsageLimitRequest(*redshiftserverless.DeleteUsageLimitInput) (*request.Request, *redshiftserverless.DeleteUsageLimitOutput)

    DeleteWorkgroup(*redshiftserverless.DeleteWorkgroupInput) (*redshiftserverless.DeleteWorkgroupOutput, error)
    DeleteWorkgroupWithContext(aws.Context, *redshiftserverless.DeleteWorkgroupInput, ...request.Option) (*redshiftserverless.DeleteWorkgroupOutput, error)
    DeleteWorkgroupRequest(*redshiftserverless.DeleteWorkgroupInput) (*request.Request, *redshiftserverless.DeleteWorkgroupOutput)

    GetCredentials(*redshiftserverless.GetCredentialsInput) (*redshiftserverless.GetCredentialsOutput, error)
    GetCredentialsWithContext(aws.Context, *redshiftserverless.GetCredentialsInput, ...request.Option) (*redshiftserverless.GetCredentialsOutput, error)
    GetCredentialsRequest(*redshiftserverless.GetCredentialsInput) (*request.Request, *redshiftserverless.GetCredentialsOutput)

    GetEndpointAccess(*redshiftserverless.GetEndpointAccessInput) (*redshiftserverless.GetEndpointAccessOutput, error)
    GetEndpointAccessWithContext(aws.Context, *redshiftserverless.GetEndpointAccessInput, ...request.Option) (*redshiftserverless.GetEndpointAccessOutput, error)
    GetEndpointAccessRequest(*redshiftserverless.GetEndpointAccessInput) (*request.Request, *redshiftserverless.GetEndpointAccessOutput)

    GetNamespace(*redshiftserverless.GetNamespaceInput) (*redshiftserverless.GetNamespaceOutput, error)
    GetNamespaceWithContext(aws.Context, *redshiftserverless.GetNamespaceInput, ...request.Option) (*redshiftserverless.GetNamespaceOutput, error)
    GetNamespaceRequest(*redshiftserverless.GetNamespaceInput) (*request.Request, *redshiftserverless.GetNamespaceOutput)

    GetRecoveryPoint(*redshiftserverless.GetRecoveryPointInput) (*redshiftserverless.GetRecoveryPointOutput, error)
    GetRecoveryPointWithContext(aws.Context, *redshiftserverless.GetRecoveryPointInput, ...request.Option) (*redshiftserverless.GetRecoveryPointOutput, error)
    GetRecoveryPointRequest(*redshiftserverless.GetRecoveryPointInput) (*request.Request, *redshiftserverless.GetRecoveryPointOutput)

    GetResourcePolicy(*redshiftserverless.GetResourcePolicyInput) (*redshiftserverless.GetResourcePolicyOutput, error)
    GetResourcePolicyWithContext(aws.Context, *redshiftserverless.GetResourcePolicyInput, ...request.Option) (*redshiftserverless.GetResourcePolicyOutput, error)
    GetResourcePolicyRequest(*redshiftserverless.GetResourcePolicyInput) (*request.Request, *redshiftserverless.GetResourcePolicyOutput)

    GetSnapshot(*redshiftserverless.GetSnapshotInput) (*redshiftserverless.GetSnapshotOutput, error)
    GetSnapshotWithContext(aws.Context, *redshiftserverless.GetSnapshotInput, ...request.Option) (*redshiftserverless.GetSnapshotOutput, error)
    GetSnapshotRequest(*redshiftserverless.GetSnapshotInput) (*request.Request, *redshiftserverless.GetSnapshotOutput)

    GetTableRestoreStatus(*redshiftserverless.GetTableRestoreStatusInput) (*redshiftserverless.GetTableRestoreStatusOutput, error)
    GetTableRestoreStatusWithContext(aws.Context, *redshiftserverless.GetTableRestoreStatusInput, ...request.Option) (*redshiftserverless.GetTableRestoreStatusOutput, error)
    GetTableRestoreStatusRequest(*redshiftserverless.GetTableRestoreStatusInput) (*request.Request, *redshiftserverless.GetTableRestoreStatusOutput)

    GetUsageLimit(*redshiftserverless.GetUsageLimitInput) (*redshiftserverless.GetUsageLimitOutput, error)
    GetUsageLimitWithContext(aws.Context, *redshiftserverless.GetUsageLimitInput, ...request.Option) (*redshiftserverless.GetUsageLimitOutput, error)
    GetUsageLimitRequest(*redshiftserverless.GetUsageLimitInput) (*request.Request, *redshiftserverless.GetUsageLimitOutput)

    GetWorkgroup(*redshiftserverless.GetWorkgroupInput) (*redshiftserverless.GetWorkgroupOutput, error)
    GetWorkgroupWithContext(aws.Context, *redshiftserverless.GetWorkgroupInput, ...request.Option) (*redshiftserverless.GetWorkgroupOutput, error)
    GetWorkgroupRequest(*redshiftserverless.GetWorkgroupInput) (*request.Request, *redshiftserverless.GetWorkgroupOutput)

    ListEndpointAccess(*redshiftserverless.ListEndpointAccessInput) (*redshiftserverless.ListEndpointAccessOutput, error)
    ListEndpointAccessWithContext(aws.Context, *redshiftserverless.ListEndpointAccessInput, ...request.Option) (*redshiftserverless.ListEndpointAccessOutput, error)
    ListEndpointAccessRequest(*redshiftserverless.ListEndpointAccessInput) (*request.Request, *redshiftserverless.ListEndpointAccessOutput)

    ListEndpointAccessPages(*redshiftserverless.ListEndpointAccessInput, func(*redshiftserverless.ListEndpointAccessOutput, bool) bool) error
    ListEndpointAccessPagesWithContext(aws.Context, *redshiftserverless.ListEndpointAccessInput, func(*redshiftserverless.ListEndpointAccessOutput, bool) bool, ...request.Option) error

    ListNamespaces(*redshiftserverless.ListNamespacesInput) (*redshiftserverless.ListNamespacesOutput, error)
    ListNamespacesWithContext(aws.Context, *redshiftserverless.ListNamespacesInput, ...request.Option) (*redshiftserverless.ListNamespacesOutput, error)
    ListNamespacesRequest(*redshiftserverless.ListNamespacesInput) (*request.Request, *redshiftserverless.ListNamespacesOutput)

    ListNamespacesPages(*redshiftserverless.ListNamespacesInput, func(*redshiftserverless.ListNamespacesOutput, bool) bool) error
    ListNamespacesPagesWithContext(aws.Context, *redshiftserverless.ListNamespacesInput, func(*redshiftserverless.ListNamespacesOutput, bool) bool, ...request.Option) error

    ListRecoveryPoints(*redshiftserverless.ListRecoveryPointsInput) (*redshiftserverless.ListRecoveryPointsOutput, error)
    ListRecoveryPointsWithContext(aws.Context, *redshiftserverless.ListRecoveryPointsInput, ...request.Option) (*redshiftserverless.ListRecoveryPointsOutput, error)
    ListRecoveryPointsRequest(*redshiftserverless.ListRecoveryPointsInput) (*request.Request, *redshiftserverless.ListRecoveryPointsOutput)

    ListRecoveryPointsPages(*redshiftserverless.ListRecoveryPointsInput, func(*redshiftserverless.ListRecoveryPointsOutput, bool) bool) error
    ListRecoveryPointsPagesWithContext(aws.Context, *redshiftserverless.ListRecoveryPointsInput, func(*redshiftserverless.ListRecoveryPointsOutput, bool) bool, ...request.Option) error

    ListSnapshots(*redshiftserverless.ListSnapshotsInput) (*redshiftserverless.ListSnapshotsOutput, error)
    ListSnapshotsWithContext(aws.Context, *redshiftserverless.ListSnapshotsInput, ...request.Option) (*redshiftserverless.ListSnapshotsOutput, error)
    ListSnapshotsRequest(*redshiftserverless.ListSnapshotsInput) (*request.Request, *redshiftserverless.ListSnapshotsOutput)

    ListSnapshotsPages(*redshiftserverless.ListSnapshotsInput, func(*redshiftserverless.ListSnapshotsOutput, bool) bool) error
    ListSnapshotsPagesWithContext(aws.Context, *redshiftserverless.ListSnapshotsInput, func(*redshiftserverless.ListSnapshotsOutput, bool) bool, ...request.Option) error

    ListTableRestoreStatus(*redshiftserverless.ListTableRestoreStatusInput) (*redshiftserverless.ListTableRestoreStatusOutput, error)
    ListTableRestoreStatusWithContext(aws.Context, *redshiftserverless.ListTableRestoreStatusInput, ...request.Option) (*redshiftserverless.ListTableRestoreStatusOutput, error)
    ListTableRestoreStatusRequest(*redshiftserverless.ListTableRestoreStatusInput) (*request.Request, *redshiftserverless.ListTableRestoreStatusOutput)

    ListTableRestoreStatusPages(*redshiftserverless.ListTableRestoreStatusInput, func(*redshiftserverless.ListTableRestoreStatusOutput, bool) bool) error
    ListTableRestoreStatusPagesWithContext(aws.Context, *redshiftserverless.ListTableRestoreStatusInput, func(*redshiftserverless.ListTableRestoreStatusOutput, bool) bool, ...request.Option) error

    ListTagsForResource(*redshiftserverless.ListTagsForResourceInput) (*redshiftserverless.ListTagsForResourceOutput, error)
    ListTagsForResourceWithContext(aws.Context, *redshiftserverless.ListTagsForResourceInput, ...request.Option) (*redshiftserverless.ListTagsForResourceOutput, error)
    ListTagsForResourceRequest(*redshiftserverless.ListTagsForResourceInput) (*request.Request, *redshiftserverless.ListTagsForResourceOutput)

    ListUsageLimits(*redshiftserverless.ListUsageLimitsInput) (*redshiftserverless.ListUsageLimitsOutput, error)
    ListUsageLimitsWithContext(aws.Context, *redshiftserverless.ListUsageLimitsInput, ...request.Option) (*redshiftserverless.ListUsageLimitsOutput, error)
    ListUsageLimitsRequest(*redshiftserverless.ListUsageLimitsInput) (*request.Request, *redshiftserverless.ListUsageLimitsOutput)

    ListUsageLimitsPages(*redshiftserverless.ListUsageLimitsInput, func(*redshiftserverless.ListUsageLimitsOutput, bool) bool) error
    ListUsageLimitsPagesWithContext(aws.Context, *redshiftserverless.ListUsageLimitsInput, func(*redshiftserverless.ListUsageLimitsOutput, bool) bool, ...request.Option) error

    ListWorkgroups(*redshiftserverless.ListWorkgroupsInput) (*redshiftserverless.ListWorkgroupsOutput, error)
    ListWorkgroupsWithContext(aws.Context, *redshiftserverless.ListWorkgroupsInput, ...request.Option) (*redshiftserverless.ListWorkgroupsOutput, error)
    ListWorkgroupsRequest(*redshiftserverless.ListWorkgroupsInput) (*request.Request, *redshiftserverless.ListWorkgroupsOutput)

    ListWorkgroupsPages(*redshiftserverless.ListWorkgroupsInput, func(*redshiftserverless.ListWorkgroupsOutput, bool) bool) error
    ListWorkgroupsPagesWithContext(aws.Context, *redshiftserverless.ListWorkgroupsInput, func(*redshiftserverless.ListWorkgroupsOutput, bool) bool, ...request.Option) error

    PutResourcePolicy(*redshiftserverless.PutResourcePolicyInput) (*redshiftserverless.PutResourcePolicyOutput, error)
    PutResourcePolicyWithContext(aws.Context, *redshiftserverless.PutResourcePolicyInput, ...request.Option) (*redshiftserverless.PutResourcePolicyOutput, error)
    PutResourcePolicyRequest(*redshiftserverless.PutResourcePolicyInput) (*request.Request, *redshiftserverless.PutResourcePolicyOutput)

    RestoreFromRecoveryPoint(*redshiftserverless.RestoreFromRecoveryPointInput) (*redshiftserverless.RestoreFromRecoveryPointOutput, error)
    RestoreFromRecoveryPointWithContext(aws.Context, *redshiftserverless.RestoreFromRecoveryPointInput, ...request.Option) (*redshiftserverless.RestoreFromRecoveryPointOutput, error)
    RestoreFromRecoveryPointRequest(*redshiftserverless.RestoreFromRecoveryPointInput) (*request.Request, *redshiftserverless.RestoreFromRecoveryPointOutput)

    RestoreFromSnapshot(*redshiftserverless.RestoreFromSnapshotInput) (*redshiftserverless.RestoreFromSnapshotOutput, error)
    RestoreFromSnapshotWithContext(aws.Context, *redshiftserverless.RestoreFromSnapshotInput, ...request.Option) (*redshiftserverless.RestoreFromSnapshotOutput, error)
    RestoreFromSnapshotRequest(*redshiftserverless.RestoreFromSnapshotInput) (*request.Request, *redshiftserverless.RestoreFromSnapshotOutput)

    RestoreTableFromSnapshot(*redshiftserverless.RestoreTableFromSnapshotInput) (*redshiftserverless.RestoreTableFromSnapshotOutput, error)
    RestoreTableFromSnapshotWithContext(aws.Context, *redshiftserverless.RestoreTableFromSnapshotInput, ...request.Option) (*redshiftserverless.RestoreTableFromSnapshotOutput, error)
    RestoreTableFromSnapshotRequest(*redshiftserverless.RestoreTableFromSnapshotInput) (*request.Request, *redshiftserverless.RestoreTableFromSnapshotOutput)

    TagResource(*redshiftserverless.TagResourceInput) (*redshiftserverless.TagResourceOutput, error)
    TagResourceWithContext(aws.Context, *redshiftserverless.TagResourceInput, ...request.Option) (*redshiftserverless.TagResourceOutput, error)
    TagResourceRequest(*redshiftserverless.TagResourceInput) (*request.Request, *redshiftserverless.TagResourceOutput)

    UntagResource(*redshiftserverless.UntagResourceInput) (*redshiftserverless.UntagResourceOutput, error)
    UntagResourceWithContext(aws.Context, *redshiftserverless.UntagResourceInput, ...request.Option) (*redshiftserverless.UntagResourceOutput, error)
    UntagResourceRequest(*redshiftserverless.UntagResourceInput) (*request.Request, *redshiftserverless.UntagResourceOutput)

    UpdateEndpointAccess(*redshiftserverless.UpdateEndpointAccessInput) (*redshiftserverless.UpdateEndpointAccessOutput, error)
    UpdateEndpointAccessWithContext(aws.Context, *redshiftserverless.UpdateEndpointAccessInput, ...request.Option) (*redshiftserverless.UpdateEndpointAccessOutput, error)
    UpdateEndpointAccessRequest(*redshiftserverless.UpdateEndpointAccessInput) (*request.Request, *redshiftserverless.UpdateEndpointAccessOutput)

    UpdateNamespace(*redshiftserverless.UpdateNamespaceInput) (*redshiftserverless.UpdateNamespaceOutput, error)
    UpdateNamespaceWithContext(aws.Context, *redshiftserverless.UpdateNamespaceInput, ...request.Option) (*redshiftserverless.UpdateNamespaceOutput, error)
    UpdateNamespaceRequest(*redshiftserverless.UpdateNamespaceInput) (*request.Request, *redshiftserverless.UpdateNamespaceOutput)

    UpdateSnapshot(*redshiftserverless.UpdateSnapshotInput) (*redshiftserverless.UpdateSnapshotOutput, error)
    UpdateSnapshotWithContext(aws.Context, *redshiftserverless.UpdateSnapshotInput, ...request.Option) (*redshiftserverless.UpdateSnapshotOutput, error)
    UpdateSnapshotRequest(*redshiftserverless.UpdateSnapshotInput) (*request.Request, *redshiftserverless.UpdateSnapshotOutput)

    UpdateUsageLimit(*redshiftserverless.UpdateUsageLimitInput) (*redshiftserverless.UpdateUsageLimitOutput, error)
    UpdateUsageLimitWithContext(aws.Context, *redshiftserverless.UpdateUsageLimitInput, ...request.Option) (*redshiftserverless.UpdateUsageLimitOutput, error)
    UpdateUsageLimitRequest(*redshiftserverless.UpdateUsageLimitInput) (*request.Request, *redshiftserverless.UpdateUsageLimitOutput)

    UpdateWorkgroup(*redshiftserverless.UpdateWorkgroupInput) (*redshiftserverless.UpdateWorkgroupOutput, error)
    UpdateWorkgroupWithContext(aws.Context, *redshiftserverless.UpdateWorkgroupInput, ...request.Option) (*redshiftserverless.UpdateWorkgroupOutput, error)
    UpdateWorkgroupRequest(*redshiftserverless.UpdateWorkgroupInput) (*request.Request, *redshiftserverless.UpdateWorkgroupOutput)
}

RedshiftServerlessAPI provides an interface to enable mocking the redshiftserverless.RedshiftServerless service client's API operation, paginators, and waiters. This make unit testing your code that calls out to the SDK's service client's calls easier.

The best way to use this interface is so the SDK's service client's calls can be stubbed out for unit testing your code with the SDK without needing to inject custom request handlers into the SDK's request pipeline.

// myFunc uses an SDK service client to make a request to
// Redshift Serverless.
func myFunc(svc redshiftserverlessiface.RedshiftServerlessAPI) bool {
    // Make svc.ConvertRecoveryPointToSnapshot request
}

func main() {
    sess := session.New()
    svc := redshiftserverless.New(sess)

    myFunc(svc)
}

In your _test.go file:

// Define a mock struct to be used in your unit tests of myFunc.
type mockRedshiftServerlessClient struct {
    redshiftserverlessiface.RedshiftServerlessAPI
}
func (m *mockRedshiftServerlessClient) ConvertRecoveryPointToSnapshot(input *redshiftserverless.ConvertRecoveryPointToSnapshotInput) (*redshiftserverless.ConvertRecoveryPointToSnapshotOutput, error) {
    // mock response/functionality
}

func TestMyFunc(t *testing.T) {
    // Setup Test
    mockSvc := &mockRedshiftServerlessClient{}

    myfunc(mockSvc)

    // Verify myFunc's functionality
}

It is important to note that this interface will have breaking changes when the service model is updated and adds new API operations, paginators, and waiters. Its suggested to use the pattern above for testing, or using tooling to generate mocks to satisfy the interfaces.