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

[rackspace] get_servers and list_servers mocks

This commit is contained in:
Wesley Beary 2009-11-10 09:37:47 -08:00
parent 1a46fe959c
commit 2fd5f771ff
2 changed files with 21 additions and 3 deletions

View file

@ -26,7 +26,7 @@ unless Fog.mocking?
# * 'status'<~String> - Current server status
def get_server_details(server_id)
request(
:expects => 200,
:expects => [200, 203],
:method => 'GET',
:path => "servers/#{server_id}.json"
)
@ -42,7 +42,16 @@ else
module Rackspace
class Servers
def get_server_details
def get_server_details(server_id)
response = Fog::Response.new
if server = list_servers_detail.body['servers'].detect { |server| server['id'] == server_id }
response.status = [200, 203][rand(1)]
response.body = { 'server' => server }
else
response.status = 404
raise(Excon::Errors.status_error(202, 404, response))
end
response
end
end

View file

@ -14,7 +14,7 @@ unless Fog.mocking?
# * 'name<~String> - Name of server
def list_servers
request(
:expects => 200,
:expects => [200, 203],
:method => 'GET',
:path => 'servers.json'
)
@ -31,6 +31,15 @@ else
class Servers
def list_servers
response = Fog::Response.new
data = list_servers_detail.body['servers']
servers = []
for server in data
servers << server.reject { |key, value| !['id', 'name'].include?(key) }
end
response.status = [200, 203][rand(1)]
response.body = { 'servers' => servers }
response
end
end