1package awstesting
2
3import (
4	"github.com/aws/aws-sdk-go/aws"
5	"github.com/aws/aws-sdk-go/aws/client"
6	"github.com/aws/aws-sdk-go/aws/client/metadata"
7	"github.com/aws/aws-sdk-go/aws/defaults"
8)
9
10// NewClient creates and initializes a generic service client for testing.
11func NewClient(cfgs ...*aws.Config) *client.Client {
12	info := metadata.ClientInfo{
13		Endpoint:    "http://endpoint",
14		SigningName: "",
15	}
16	def := defaults.Get()
17	def.Config.MergeIn(cfgs...)
18
19	if v := aws.StringValue(def.Config.Endpoint); len(v) > 0 {
20		info.Endpoint = v
21	}
22
23	return client.New(*def.Config, info, def.Handlers)
24}
25