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

Change Fog::Mock::DELAY to Fog::Mock.delay and add Fog::Mock.set_delay(time)

This commit is contained in:
Sam Merritt 2010-04-14 04:53:50 +08:00 committed by Wesley Beary
parent 478f4b346e
commit e10d41cbb8
5 changed files with 21 additions and 13 deletions

View file

@ -29,7 +29,15 @@ require 'fog/terremark'
module Fog
module Mock
DELAY = 1
@delay = 1
def self.delay
@delay
end
def self.set_delay(delay)
raise ArgumentError, "delay must be non-negative" unless delay >= 0
@delay = delay
end
end
class MockNotImplemented < StandardError; end

View file

@ -74,7 +74,7 @@ module Fog
instance_set.each do |instance|
case instance['instanceState']['name']
when 'pending'
if Time.now - instance['launchTime'] > Fog::Mock::DELAY
if Time.now - instance['launchTime'] > Fog::Mock.delay
instance['dnsName'] = "ec2-#{Fog::AWS::Mock.ip_address.gsub('.','-')}.compute-1.amazonaws.com"
instance['privateIpAddress'] = Fog::AWS::Mock.ip_address
instance['privateDnsName'] = "ip-#{instance['privateIpAddress'].gsub('.','-')}.ec2.internal"
@ -83,14 +83,14 @@ module Fog
when 'rebooting'
instance['instanceState'] = { 'code' => 16, 'name' => 'running' }
when 'shutting-down'
if Time.now - @data[:deleted_at][instance['instanceId']] > Fog::Mock::DELAY * 2
if Time.now - @data[:deleted_at][instance['instanceId']] > Fog::Mock.delay * 2
@data[:deleted_at].delete(instance['instanceId'])
@data[:instances].delete(instance['instanceId'])
elsif Time.now - @data[:deleted_at][instance['instanceId']] > Fog::Mock::DELAY
elsif Time.now - @data[:deleted_at][instance['instanceId']] > Fog::Mock.delay
instance['instanceState'] = { 'code' => 16, 'name' => 'terminating' }
end
when 'terminating'
if Time.now - @data[:deleted_at][instance['instanceId']] > Fog::Mock::DELAY
if Time.now - @data[:deleted_at][instance['instanceId']] > Fog::Mock.delay
@data[:deleted_at].delete(instance['instanceId'])
@data[:instances].delete(instance['instanceId'])
end

View file

@ -44,10 +44,10 @@ module Fog
snapshot_set.each do |snapshot|
case snapshot['status']
when 'in progress', 'pending'
if Time.now - snapshot['startTime'] > Fog::Mock::DELAY * 2
if Time.now - snapshot['startTime'] > Fog::Mock.delay * 2
snapshot['progress'] = '100%'
snapshot['status'] = 'completed'
elsif Time.now - snapshot['startTime'] > Fog::Mock::DELAY
elsif Time.now - snapshot['startTime'] > Fog::Mock.delay
snapshot['progress'] = '50%'
snapshot['status'] = 'in progress'
end

View file

@ -50,16 +50,16 @@ module Fog
volume_set.each do |volume|
case volume['status']
when 'attaching'
if Time.now - volume['attachmentSet'].first['attachTime'] > Fog::Mock::DELAY
if Time.now - volume['attachmentSet'].first['attachTime'] > Fog::Mock.delay
volume['attachmentSet'].first['status'] = 'attached'
volume['status'] = 'attached'
end
when 'creating'
if Time.now - volume['createTime'] > Fog::Mock::DELAY
if Time.now - volume['createTime'] > Fog::Mock.delay
volume['status'] = 'available'
end
when 'deleting'
if Time.now - @data[:deleted_at][volume['volumeId']] > Fog::Mock::DELAY
if Time.now - @data[:deleted_at][volume['volumeId']] > Fog::Mock.delay
@data[:deleted_at].delete(volume['volumeId'])
@data[:volumes].delete(volume['volumeId'])
end

View file

@ -1,5 +1,5 @@
require File.dirname(__FILE__) + '/../../../spec_helper'
require File.dirname(__FILE__) + '/../../../shared_examples/flavors_examples'
require File.dirname(__FILE__) + '/../../spec_helper'
require File.dirname(__FILE__) + '/../../shared_examples/flavors_examples'
describe 'Fog::AWS::Slicehost::Flavors' do
@ -11,4 +11,4 @@ describe 'Fog::AWS::Slicehost::Flavors' do
@flavors = Slicehost[:slices].flavors
end
end
end