mirror of
https://github.com/fog/fog.git
synced 2022-11-09 13:51:43 -05:00
[rackspace|auto_scale] fixing tests
This commit is contained in:
parent
4af85578ae
commit
3f8b8a221c
3 changed files with 78 additions and 50 deletions
|
@ -131,6 +131,15 @@ WEBHOOK_FORMAT = {
|
|||
"links" => Array
|
||||
}
|
||||
|
||||
LIST_WEBHOOKS_FORMAT = [
|
||||
{
|
||||
"id" => String,
|
||||
"name" => String,
|
||||
"links"=>[{"href" => String, "rel" => String }],
|
||||
"metadata"=>{}
|
||||
}
|
||||
]
|
||||
|
||||
### OPTIONS
|
||||
|
||||
LAUNCH_CONFIG_OPTIONS = {
|
||||
|
|
|
@ -3,37 +3,47 @@ Shindo.tests('Fog::Rackspace::AutoScale | policy_tests', ['rackspace', 'rackspac
|
|||
pending if Fog.mocking?
|
||||
service = Fog::Rackspace::AutoScale.new :rackspace_region => :ord
|
||||
|
||||
@group_id = service.create_group(LAUNCH_CONFIG_OPTIONS, GROUP_CONFIG_OPTIONS, POLICIES_OPTIONS).body['group']['id']
|
||||
begin
|
||||
@group_id = service.create_group(LAUNCH_CONFIG_OPTIONS, GROUP_CONFIG_OPTIONS, POLICIES_OPTIONS).body['group']['id']
|
||||
|
||||
tests('success') do
|
||||
tests('#list policies').formats(POLICIES_FORMAT) do
|
||||
service.list_policies(@group_id).body['policies']
|
||||
end
|
||||
tests('#create policy').formats(201) do
|
||||
response = service.create_policy(@group_id, POLICY_OPTIONS)
|
||||
@policy_id = response.body['policies'][0]['id']
|
||||
response.data[:status]
|
||||
end
|
||||
tests('success') do
|
||||
tests('#list policies').formats(POLICIES_FORMAT) do
|
||||
service.list_policies(@group_id).body['policies']
|
||||
end
|
||||
tests('#create_policy').returns(201) do
|
||||
response = service.create_policy(@group_id, POLICY_OPTIONS)
|
||||
@policy_id = response.body['policies'][0]['id']
|
||||
response.status
|
||||
end
|
||||
|
||||
tests('#get policy').formats(POLICY_FORMAT) do
|
||||
response = service.get_policy(@group_id, @policy_id)
|
||||
response.body['policy']
|
||||
end
|
||||
tests('#get_policy').formats(POLICY_FORMAT) do
|
||||
response = service.get_policy(@group_id, @policy_id)
|
||||
response.body['policy']
|
||||
end
|
||||
|
||||
tests('#update policy').formats(204) do
|
||||
response = service.update_policy(@group_id, @policy_id, {
|
||||
'name' => 'foo',
|
||||
'changePercent' => 1,
|
||||
'type' => 'webhook',
|
||||
'cooldown' => 100
|
||||
})
|
||||
response.data[:status]
|
||||
end
|
||||
|
||||
tests('#delete policy').formats(204) do
|
||||
response = service.delete_policy(@group_id, @policy_id)
|
||||
response.data[:status]
|
||||
tests('#execute_policy').returns(202) do
|
||||
service.execute_policy(@group_id, @policy_id).status
|
||||
end
|
||||
|
||||
tests('#update_policy').returns(204) do
|
||||
response = service.update_policy(@group_id, @policy_id, {
|
||||
'name' => 'foo',
|
||||
'changePercent' => 1,
|
||||
'type' => 'webhook',
|
||||
'cooldown' => 100
|
||||
})
|
||||
response.status
|
||||
end
|
||||
|
||||
tests('#delete_policy').returns(204) do
|
||||
response = service.delete_policy(@group_id, @policy_id)
|
||||
response.status
|
||||
end
|
||||
end
|
||||
ensure
|
||||
group = service.groups.get(@group_id)
|
||||
deactive_auto_scale_group(group)
|
||||
group.destroy
|
||||
end
|
||||
|
||||
tests('failure') do
|
||||
|
|
|
@ -2,46 +2,55 @@ Shindo.tests('Fog::Rackspace::AutoScale | webhook_tests', ['rackspace', 'rackspa
|
|||
pending if Fog.mocking?
|
||||
service = Fog::Rackspace::AutoScale.new :rackspace_region => :ord
|
||||
|
||||
@group_id = service.create_group(LAUNCH_CONFIG_OPTIONS, GROUP_CONFIG_OPTIONS, POLICIES_OPTIONS).body['group']['id']
|
||||
@policy_id = service.create_policy(@group_id, POLICY_OPTIONS).body['policies'][0]['id']
|
||||
begin
|
||||
@group_id = service.create_group(LAUNCH_CONFIG_OPTIONS, GROUP_CONFIG_OPTIONS, POLICIES_OPTIONS).body['group']['id']
|
||||
@policy_id = service.create_policy(@group_id, POLICY_OPTIONS).body['policies'][0]['id']
|
||||
|
||||
tests('success') do
|
||||
tests('#create webhook').formats(201) do
|
||||
response = service.create_webhook(@group_id, @policy_id, WEBHOOK_OPTIONS)
|
||||
@webhook_id = response.body['webhooks'][0]['id']
|
||||
response.data[:status]
|
||||
end
|
||||
tests('success') do
|
||||
tests('#create_webhook').formats(201) do
|
||||
response = service.create_webhook(@group_id, @policy_id, WEBHOOK_OPTIONS)
|
||||
@webhook_id = response.body['webhooks'][0]['id']
|
||||
response.data[:status]
|
||||
end
|
||||
|
||||
tests('#view webhook').formats(WEBHOOK_FORMAT) do
|
||||
response = service.get_webhook(@group_id, @policy_id, @webhook_id)
|
||||
response.body['webhook']
|
||||
end
|
||||
tests('#list_webhooks').formats(LIST_WEBHOOKS_FORMAT, false) do
|
||||
response = service.list_webhooks(@group_id, @policy_id).body["webhooks"]
|
||||
end
|
||||
|
||||
tests('#update webhook').formats(204) do
|
||||
response = service.update_webhook(@group_id, @policy_id, @webhook_id, {'name' => 'new', 'metadata' => {}} )
|
||||
response.data[:status]
|
||||
end
|
||||
tests('#get_webhook').formats(WEBHOOK_FORMAT) do
|
||||
response = service.get_webhook(@group_id, @policy_id, @webhook_id)
|
||||
response.body['webhook']
|
||||
end
|
||||
|
||||
tests('#delete webhook').formats(204) do
|
||||
response = service.delete_webhook(@group_id, @policy_id, @webhook_id)
|
||||
response.data[:status]
|
||||
tests('#update_webhook').formats(204) do
|
||||
response = service.update_webhook(@group_id, @policy_id, @webhook_id, {'name' => 'new', 'metadata' => {}} )
|
||||
response.data[:status]
|
||||
end
|
||||
|
||||
tests('#delete_webhook').formats(204) do
|
||||
response = service.delete_webhook(@group_id, @policy_id, @webhook_id)
|
||||
response.data[:status]
|
||||
end
|
||||
end
|
||||
ensure
|
||||
service.delete_policy @group_id, @policy_id
|
||||
service.delete_group @group_id
|
||||
end
|
||||
|
||||
tests('failure') do
|
||||
tests('#create webhook').raises(Fog::Rackspace::AutoScale::BadRequest) do
|
||||
tests('#create_webhook').raises(Fog::Rackspace::AutoScale::BadRequest) do
|
||||
service.create_webhook(@group_id, @policy_id, {})
|
||||
end
|
||||
|
||||
tests('#view webhook').raises(Fog::Rackspace::AutoScale::NotFound) do
|
||||
tests('#get_webhook').raises(Fog::Rackspace::AutoScale::NotFound) do
|
||||
service.get_webhook(@group_id, @policy_id, 123)
|
||||
end
|
||||
|
||||
tests('#update webhook').raises(Fog::Rackspace::AutoScale::BadRequest) do
|
||||
tests('#update_webhook').raises(Fog::Rackspace::AutoScale::BadRequest) do
|
||||
service.update_webhook(@group_id, @policy_id, @webhook_id, {})
|
||||
end
|
||||
|
||||
tests('#delete webhook').raises(Fog::Rackspace::AutoScale::NotFound) do
|
||||
tests('#delete_webhook').raises(Fog::Rackspace::AutoScale::NotFound) do
|
||||
service.delete_webhook(@group_id, @policy_id, 123)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Reference in a new issue