github.com/aavshr/aws-sdk-go@v1.41.3/service/savingsplans/savingsplansiface/interface.go (about) 1 // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. 2 3 // Package savingsplansiface provides an interface to enable mocking the AWS Savings Plans service client 4 // for testing your code. 5 // 6 // It is important to note that this interface will have breaking changes 7 // when the service model is updated and adds new API operations, paginators, 8 // and waiters. 9 package savingsplansiface 10 11 import ( 12 "github.com/aavshr/aws-sdk-go/aws" 13 "github.com/aavshr/aws-sdk-go/aws/request" 14 "github.com/aavshr/aws-sdk-go/service/savingsplans" 15 ) 16 17 // SavingsPlansAPI provides an interface to enable mocking the 18 // savingsplans.SavingsPlans service client's API operation, 19 // paginators, and waiters. This make unit testing your code that calls out 20 // to the SDK's service client's calls easier. 21 // 22 // The best way to use this interface is so the SDK's service client's calls 23 // can be stubbed out for unit testing your code with the SDK without needing 24 // to inject custom request handlers into the SDK's request pipeline. 25 // 26 // // myFunc uses an SDK service client to make a request to 27 // // AWS Savings Plans. 28 // func myFunc(svc savingsplansiface.SavingsPlansAPI) bool { 29 // // Make svc.CreateSavingsPlan request 30 // } 31 // 32 // func main() { 33 // sess := session.New() 34 // svc := savingsplans.New(sess) 35 // 36 // myFunc(svc) 37 // } 38 // 39 // In your _test.go file: 40 // 41 // // Define a mock struct to be used in your unit tests of myFunc. 42 // type mockSavingsPlansClient struct { 43 // savingsplansiface.SavingsPlansAPI 44 // } 45 // func (m *mockSavingsPlansClient) CreateSavingsPlan(input *savingsplans.CreateSavingsPlanInput) (*savingsplans.CreateSavingsPlanOutput, error) { 46 // // mock response/functionality 47 // } 48 // 49 // func TestMyFunc(t *testing.T) { 50 // // Setup Test 51 // mockSvc := &mockSavingsPlansClient{} 52 // 53 // myfunc(mockSvc) 54 // 55 // // Verify myFunc's functionality 56 // } 57 // 58 // It is important to note that this interface will have breaking changes 59 // when the service model is updated and adds new API operations, paginators, 60 // and waiters. Its suggested to use the pattern above for testing, or using 61 // tooling to generate mocks to satisfy the interfaces. 62 type SavingsPlansAPI interface { 63 CreateSavingsPlan(*savingsplans.CreateSavingsPlanInput) (*savingsplans.CreateSavingsPlanOutput, error) 64 CreateSavingsPlanWithContext(aws.Context, *savingsplans.CreateSavingsPlanInput, ...request.Option) (*savingsplans.CreateSavingsPlanOutput, error) 65 CreateSavingsPlanRequest(*savingsplans.CreateSavingsPlanInput) (*request.Request, *savingsplans.CreateSavingsPlanOutput) 66 67 DeleteQueuedSavingsPlan(*savingsplans.DeleteQueuedSavingsPlanInput) (*savingsplans.DeleteQueuedSavingsPlanOutput, error) 68 DeleteQueuedSavingsPlanWithContext(aws.Context, *savingsplans.DeleteQueuedSavingsPlanInput, ...request.Option) (*savingsplans.DeleteQueuedSavingsPlanOutput, error) 69 DeleteQueuedSavingsPlanRequest(*savingsplans.DeleteQueuedSavingsPlanInput) (*request.Request, *savingsplans.DeleteQueuedSavingsPlanOutput) 70 71 DescribeSavingsPlanRates(*savingsplans.DescribeSavingsPlanRatesInput) (*savingsplans.DescribeSavingsPlanRatesOutput, error) 72 DescribeSavingsPlanRatesWithContext(aws.Context, *savingsplans.DescribeSavingsPlanRatesInput, ...request.Option) (*savingsplans.DescribeSavingsPlanRatesOutput, error) 73 DescribeSavingsPlanRatesRequest(*savingsplans.DescribeSavingsPlanRatesInput) (*request.Request, *savingsplans.DescribeSavingsPlanRatesOutput) 74 75 DescribeSavingsPlans(*savingsplans.DescribeSavingsPlansInput) (*savingsplans.DescribeSavingsPlansOutput, error) 76 DescribeSavingsPlansWithContext(aws.Context, *savingsplans.DescribeSavingsPlansInput, ...request.Option) (*savingsplans.DescribeSavingsPlansOutput, error) 77 DescribeSavingsPlansRequest(*savingsplans.DescribeSavingsPlansInput) (*request.Request, *savingsplans.DescribeSavingsPlansOutput) 78 79 DescribeSavingsPlansOfferingRates(*savingsplans.DescribeSavingsPlansOfferingRatesInput) (*savingsplans.DescribeSavingsPlansOfferingRatesOutput, error) 80 DescribeSavingsPlansOfferingRatesWithContext(aws.Context, *savingsplans.DescribeSavingsPlansOfferingRatesInput, ...request.Option) (*savingsplans.DescribeSavingsPlansOfferingRatesOutput, error) 81 DescribeSavingsPlansOfferingRatesRequest(*savingsplans.DescribeSavingsPlansOfferingRatesInput) (*request.Request, *savingsplans.DescribeSavingsPlansOfferingRatesOutput) 82 83 DescribeSavingsPlansOfferings(*savingsplans.DescribeSavingsPlansOfferingsInput) (*savingsplans.DescribeSavingsPlansOfferingsOutput, error) 84 DescribeSavingsPlansOfferingsWithContext(aws.Context, *savingsplans.DescribeSavingsPlansOfferingsInput, ...request.Option) (*savingsplans.DescribeSavingsPlansOfferingsOutput, error) 85 DescribeSavingsPlansOfferingsRequest(*savingsplans.DescribeSavingsPlansOfferingsInput) (*request.Request, *savingsplans.DescribeSavingsPlansOfferingsOutput) 86 87 ListTagsForResource(*savingsplans.ListTagsForResourceInput) (*savingsplans.ListTagsForResourceOutput, error) 88 ListTagsForResourceWithContext(aws.Context, *savingsplans.ListTagsForResourceInput, ...request.Option) (*savingsplans.ListTagsForResourceOutput, error) 89 ListTagsForResourceRequest(*savingsplans.ListTagsForResourceInput) (*request.Request, *savingsplans.ListTagsForResourceOutput) 90 91 TagResource(*savingsplans.TagResourceInput) (*savingsplans.TagResourceOutput, error) 92 TagResourceWithContext(aws.Context, *savingsplans.TagResourceInput, ...request.Option) (*savingsplans.TagResourceOutput, error) 93 TagResourceRequest(*savingsplans.TagResourceInput) (*request.Request, *savingsplans.TagResourceOutput) 94 95 UntagResource(*savingsplans.UntagResourceInput) (*savingsplans.UntagResourceOutput, error) 96 UntagResourceWithContext(aws.Context, *savingsplans.UntagResourceInput, ...request.Option) (*savingsplans.UntagResourceOutput, error) 97 UntagResourceRequest(*savingsplans.UntagResourceInput) (*request.Request, *savingsplans.UntagResourceOutput) 98 } 99 100 var _ SavingsPlansAPI = (*savingsplans.SavingsPlans)(nil)