1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00

[ec2] more mocking fixes

This commit is contained in:
geemus (Wesley Beary) 2010-04-01 14:07:26 -07:00
parent 4b17941d77
commit d9e29f6f57
4 changed files with 8 additions and 8 deletions

View file

@ -50,6 +50,7 @@ module Fog
'volumeId' => volume_id
}
volume['attachmentSet'] = [data]
volume['status'] = 'attaching'
response.status = 200
response.body = {
'requestId' => Fog::AWS::Mock.request_id

View file

@ -80,24 +80,23 @@ module Fog
when 'rebooting'
instance['instanceState'] = { 'code' => 16, 'name' => 'running' }
when 'shutting-down'
if Time.now - @data[:deleted_at][instance['instanceId']] > 1
instance['instanceState'] = { 'code' => 16, 'name' => 'terminating' }
elsif Time.now - @data[:deleted_at][instance['instanceId']] > 2
if Time.now - @data[:deleted_at][instance['instanceId']] > 2
@data[:deleted_at].delete(instance['instanceId'])
@data[:instances].delete(instance['instanceId'])
elsif Time.now - @data[:deleted_at][instance['instanceId']] > 1
instance['instanceState'] = { 'code' => 16, 'name' => 'terminating' }
end
when 'terminating'
if Time.now - @data[:deleted_at][instance['instanceId']] > 1
@data[:deleted_at].delete(instance['instanceId'])
@data[:instances].delete(instance['instanceId'])
instance_set.delete(instance)
end
end
end
if instance_id.length == 0 || instance_id.length == instance_set.length
instance_set = instance_set.reject {|instance| !@data[:instances][instance['instanceId']]}
response.status = 200
reservation_set = {}
instance_set.each do |instance|
reservation_set[instance['reservationId']] ||= {

View file

@ -51,6 +51,7 @@ module Fog
case volume['status']
when 'attaching'
if Time.now - volume['attachmentSet'].first['attachTime'] > 1
volume['attachmentSet'].first['status'] = 'attached'
volume['status'] = 'attached'
end
when 'creating'
@ -61,12 +62,12 @@ module Fog
if Time.now - @data[:deleted_at][volume['volumeId']] > 1
@data[:deleted_at].delete(volume['volumeId'])
@data[:volumes].delete(volume['volumeId'])
volume_set.delete(volume)
end
end
end
if volume_id.length == 0 || volume_id.length == volume_set.length
volume_set = volume_set.reject {|volume| !@data[:volumes][volume['volumeId']]}
response.status = 200
response.body = {
'requestId' => Fog::AWS::Mock.request_id,

View file

@ -74,11 +74,10 @@ module Fog
end
describe_volumes.body['volumeSet'].each do |volume|
if volume['instanceId'] == instance_id
if volume['attachmentSet'].first && volume['attachmentSet'].first['instanceId'] == instance_id
detach_volume(volume['volumeId'])
end
end
end
else
response.status = 400