本文整理汇总了Golang中github.com/endemics/docker-plugin-ebs/ec2/mocks.EC2类的典型用法代码示例。如果您正苦于以下问题:Golang EC2类的具体用法?Golang EC2怎么用?Golang EC2使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了EC2类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: TestCreateReturnsErrorWhenSizeOrIopsAreInvalid
func TestCreateReturnsErrorWhenSizeOrIopsAreInvalid(t *testing.T) {
optsTests := []map[string]string{
{
"size": "x",
},
{
"iops": "y",
},
}
mockOutput := &ec2.Volume{
AvailabilityZone: aws.String("eu-west-1a"),
CreateTime: aws.Time(time.Now()),
Encrypted: aws.Bool(false),
Iops: aws.Int64(3),
Size: aws.Int64(1),
SnapshotId: aws.String(""),
State: aws.String("creating"),
VolumeId: aws.String("vol-681e4aac"),
VolumeType: aws.String("gp2"),
}
m := new(mocks.EC2)
m.On("CreateVolume", mock.AnythingOfType("*ec2.CreateVolumeInput")).Return(mockOutput, nil)
wrapper := &EC2Wrapper{m}
for _, tt := range optsTests {
_, err := wrapper.create("label", tt)
assert.Error(t, err, "create should return an error when size or iops cannot be converted in int64")
}
}
开发者ID:endemics,项目名称:docker-plugin-ebs,代码行数:33,代码来源:ec2_service_test.go
示例2: TestFindReturnsErrorIfMoreThanOneVolumeMatchesLabel
func TestFindReturnsErrorIfMoreThanOneVolumeMatchesLabel(t *testing.T) {
mockOutput := &ec2.DescribeVolumesOutput{
Volumes: []*ec2.Volume{
&ec2.Volume{
AvailabilityZone: aws.String("eu-west-1a"),
CreateTime: aws.Time(time.Now()),
Encrypted: aws.Bool(false),
Iops: aws.Int64(3),
Size: aws.Int64(1),
SnapshotId: aws.String(""),
State: aws.String("available"),
Tags: []*ec2.Tag{
&ec2.Tag{
Key: aws.String("Name"),
Value: aws.String("label"),
},
&ec2.Tag{
Key: aws.String("DockerVolumeName"),
Value: aws.String("label"),
},
},
VolumeId: aws.String("vol-681e4aac"),
VolumeType: aws.String("gp2"),
},
&ec2.Volume{
AvailabilityZone: aws.String("eu-west-1b"),
CreateTime: aws.Time(time.Now()),
Encrypted: aws.Bool(false),
Iops: aws.Int64(3),
Size: aws.Int64(1),
SnapshotId: aws.String(""),
State: aws.String("available"),
Tags: []*ec2.Tag{
&ec2.Tag{
Key: aws.String("Name"),
Value: aws.String("label"),
},
&ec2.Tag{
Key: aws.String("DockerVolumeName"),
Value: aws.String("label"),
},
},
VolumeId: aws.String("vol-1234beef"),
VolumeType: aws.String("gp2"),
},
},
}
m := new(mocks.EC2)
m.On("DescribeVolumes", mock.AnythingOfType("*ec2.DescribeVolumesInput")).Return(mockOutput, nil)
wrapper := &EC2Wrapper{m}
_, err := wrapper.find("label")
assert.Error(t, err, "find should return an error when more than one volume matches the label")
}
开发者ID:endemics,项目名称:docker-plugin-ebs,代码行数:57,代码来源:ec2_service_test.go
示例3: TestTagReturnsErrorWhenEC2ReturnsError
func TestTagReturnsErrorWhenEC2ReturnsError(t *testing.T) {
m := new(mocks.EC2)
m.On("CreateTags", mock.AnythingOfType("*ec2.CreateTagsInput")).Return(&ec2.CreateTagsOutput{}, fmt.Errorf("this is a mocked AWS error"))
wrapper := &EC2Wrapper{m}
err := wrapper.tag("vol-1234beef", "label")
assert.Error(t, err, "tag should return an error when AWS returns an error")
}
开发者ID:endemics,项目名称:docker-plugin-ebs,代码行数:10,代码来源:ec2_service_test.go
示例4: TestTag
func TestTag(t *testing.T) {
m := new(mocks.EC2)
m.On("CreateTags", mock.AnythingOfType("*ec2.CreateTagsInput")).Return(&ec2.CreateTagsOutput{}, nil)
wrapper := &EC2Wrapper{m}
err := wrapper.tag("vol-1234beef", "label")
assert.NoError(t, err, "tag should not return an error when all is fine")
}
开发者ID:endemics,项目名称:docker-plugin-ebs,代码行数:10,代码来源:ec2_service_test.go
示例5: TestCreateReturnsErrorWhenEC2ReturnsError
func TestCreateReturnsErrorWhenEC2ReturnsError(t *testing.T) {
m := new(mocks.EC2)
m.On("CreateVolume", mock.AnythingOfType("*ec2.CreateVolumeInput")).Return(&ec2.Volume{}, fmt.Errorf("this is a mocked AWS error"))
wrapper := &EC2Wrapper{m}
_, err := wrapper.create("label", map[string]string{})
assert.Error(t, err, "create should return an error when AWS returns an error")
}
开发者ID:endemics,项目名称:docker-plugin-ebs,代码行数:10,代码来源:ec2_service_test.go
示例6: TestFindReturnsErrorWhenEC2ReturnsError
func TestFindReturnsErrorWhenEC2ReturnsError(t *testing.T) {
mockOutput := &ec2.DescribeVolumesOutput{
Volumes: []*ec2.Volume{},
}
m := new(mocks.EC2)
m.On("DescribeVolumes", mock.AnythingOfType("*ec2.DescribeVolumesInput")).Return(mockOutput, fmt.Errorf("this is a mocked AWS error"))
wrapper := &EC2Wrapper{m}
_, err := wrapper.find("label")
assert.Error(t, err, "find should return an error when AWS returns an error")
}
开发者ID:endemics,项目名称:docker-plugin-ebs,代码行数:14,代码来源:ec2_service_test.go
示例7: TestFindReturnsEmptyStringWhenNoMatchingVolume
func TestFindReturnsEmptyStringWhenNoMatchingVolume(t *testing.T) {
mockOutput := &ec2.DescribeVolumesOutput{
Volumes: []*ec2.Volume{},
}
m := new(mocks.EC2)
m.On("DescribeVolumes", mock.AnythingOfType("*ec2.DescribeVolumesInput")).Return(mockOutput, nil)
wrapper := &EC2Wrapper{m}
output, err := wrapper.find("nosuchlabel")
if err != nil {
t.Error(err)
}
assert.Equal(t, "", output, "find should return an empty string when no volume matches DockerVolumeName=label")
}
开发者ID:endemics,项目名称:docker-plugin-ebs,代码行数:18,代码来源:ec2_service_test.go
示例8: TestCreateReturnsVolumeIdWhenCreatingVolume
func TestCreateReturnsVolumeIdWhenCreatingVolume(t *testing.T) {
optsTests := []map[string]string{
{},
{
"size": "10",
},
{
"type": "standard",
},
{
"type": "io1",
"iops": "1000",
},
}
mockOutput := &ec2.Volume{
AvailabilityZone: aws.String("eu-west-1a"),
CreateTime: aws.Time(time.Now()),
Encrypted: aws.Bool(false),
Iops: aws.Int64(3),
Size: aws.Int64(1),
SnapshotId: aws.String(""),
State: aws.String("creating"),
VolumeId: aws.String("vol-681e4aac"),
VolumeType: aws.String("gp2"),
}
m := new(mocks.EC2)
m.On("CreateVolume", mock.AnythingOfType("*ec2.CreateVolumeInput")).Return(mockOutput, nil)
wrapper := &EC2Wrapper{m}
for _, tt := range optsTests {
output, err := wrapper.create("label", tt)
if err != nil {
t.Error(err)
}
assert.Equal(t, "vol-681e4aac", output, "create should return the volumeId of the volume created")
}
}
开发者ID:endemics,项目名称:docker-plugin-ebs,代码行数:42,代码来源:ec2_service_test.go
示例9: TestFindReturnsIdWhenOneMatchingVolume
func TestFindReturnsIdWhenOneMatchingVolume(t *testing.T) {
mockOutput := &ec2.DescribeVolumesOutput{
Volumes: []*ec2.Volume{
&ec2.Volume{
AvailabilityZone: aws.String("eu-west-1a"),
CreateTime: aws.Time(time.Now()),
Encrypted: aws.Bool(false),
Iops: aws.Int64(3),
Size: aws.Int64(1),
SnapshotId: aws.String(""),
State: aws.String("available"),
Tags: []*ec2.Tag{
&ec2.Tag{
Key: aws.String("Name"),
Value: aws.String("label"),
},
&ec2.Tag{
Key: aws.String("DockerVolumeName"),
Value: aws.String("label"),
},
},
VolumeId: aws.String("vol-681e4aac"),
VolumeType: aws.String("gp2"),
},
},
}
m := new(mocks.EC2)
m.On("DescribeVolumes", mock.AnythingOfType("*ec2.DescribeVolumesInput")).Return(mockOutput, nil)
wrapper := &EC2Wrapper{m}
output, err := wrapper.find("label")
if err != nil {
t.Error(err)
}
assert.Equal(t, "vol-681e4aac", output, "find should return the volumeId of the volume matching DockerVolumeName=label")
}
开发者ID:endemics,项目名称:docker-plugin-ebs,代码行数:40,代码来源:ec2_service_test.go
注:本文中的github.com/endemics/docker-plugin-ebs/ec2/mocks.EC2类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论