cloud/awscloud: test terminating a secure instance
This commit is contained in:
parent
e30fba38fc
commit
acc415a676
2 changed files with 31 additions and 1 deletions
|
|
@ -262,6 +262,7 @@ func (m *ec2mock) DescribeInstanceStatus(ctx context.Context, input *ec2.Describ
|
|||
}
|
||||
|
||||
func (m *ec2mock) RunInstances(ctx context.Context, input *ec2.RunInstancesInput, optfns ...func(*ec2.Options)) (*ec2.RunInstancesOutput, error) {
|
||||
m.calledFn["RunInstances"] += 1
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
|
|
@ -286,7 +287,14 @@ func (m *ec2mock) CreateFleet(ctx context.Context, input *ec2.CreateFleetInput,
|
|||
|
||||
func (m *ec2mock) DeleteFleets(ctx context.Context, input *ec2.DeleteFleetsInput, optfns ...func(*ec2.Options)) (*ec2.DeleteFleetsOutput, error) {
|
||||
m.calledFn["DeleteFleets"] += 1
|
||||
return nil, nil
|
||||
return &ec2.DeleteFleetsOutput{
|
||||
UnsuccessfulFleetDeletions: nil,
|
||||
SuccessfulFleetDeletions: []ec2types.DeleteFleetSuccessItem{
|
||||
{
|
||||
FleetId: aws.String("fleet-id"),
|
||||
},
|
||||
},
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (m *ec2mock) CopyImage(ctx context.Context, input *ec2.CopyImageInput, optfns ...func(*ec2.Options)) (*ec2.CopyImageOutput, error) {
|
||||
|
|
|
|||
|
|
@ -82,3 +82,25 @@ func TestSIRunSecureInstance(t *testing.T) {
|
|||
require.Equal(t, 1, m.calledFn["CreateSecurityGroup"])
|
||||
require.Equal(t, 1, m.calledFn["CreateLaunchTemplate"])
|
||||
}
|
||||
|
||||
func TestSITerminateSecureInstance(t *testing.T) {
|
||||
m := newEc2Mock(t)
|
||||
aws := awscloud.NewForTest(m, &ec2imdsmock{t, "instance-id", "region1"}, nil, nil, nil)
|
||||
require.NotNil(t, aws)
|
||||
|
||||
// Small hack, describeinstances returns terminate/running
|
||||
// depending on how many times it was called.
|
||||
m.calledFn["DescribeInstances"] = 1
|
||||
|
||||
err := aws.TerminateSecureInstance(&awscloud.SecureInstance{
|
||||
FleetID: "fleet-id",
|
||||
SGID: "sg-id",
|
||||
LTID: "lt-id",
|
||||
InstanceID: "instance-id",
|
||||
})
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, 1, m.calledFn["DeleteFleets"])
|
||||
require.Equal(t, 1, m.calledFn["DeleteSecurityGroup"])
|
||||
require.Equal(t, 1, m.calledFn["DeleteLaunchTemplate"])
|
||||
require.Equal(t, 2, m.calledFn["DescribeInstances"])
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue