fog 0.3.34 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile.lock +6 -6
- data/README.rdoc +26 -7
- data/Rakefile +7 -1
- data/examples/dns_tests.rb +76 -0
- data/examples/{storage.rb → storage_tests.rb} +15 -15
- data/fog.gemspec +4 -4
- data/lib/fog.rb +1 -1
- data/lib/fog/aws.rb +19 -54
- data/lib/fog/aws/dns.rb +5 -1
- data/lib/fog/aws/models/compute/security_group.rb +128 -0
- data/lib/fog/aws/models/dns/record.rb +64 -0
- data/lib/fog/aws/models/dns/records.rb +47 -0
- data/lib/fog/aws/models/dns/zone.rb +53 -0
- data/lib/fog/aws/models/dns/zones.rb +33 -0
- data/lib/fog/aws/models/storage/file.rb +14 -2
- data/lib/fog/aws/parsers/dns/create_hosted_zone.rb +1 -1
- data/lib/fog/aws/parsers/dns/list_hosted_zones.rb +3 -1
- data/lib/fog/aws/requests/simpledb/create_domain.rb +1 -0
- data/lib/fog/aws/requests/simpledb/delete_attributes.rb +0 -2
- data/lib/fog/aws/requests/simpledb/delete_domain.rb +1 -0
- data/lib/fog/aws/requests/simpledb/domain_metadata.rb +1 -0
- data/lib/fog/aws/requests/simpledb/get_attributes.rb +1 -0
- data/lib/fog/aws/requests/simpledb/list_domains.rb +3 -2
- data/lib/fog/aws/requests/simpledb/put_attributes.rb +2 -2
- data/lib/fog/aws/requests/simpledb/select.rb +1 -0
- data/lib/fog/brightbox/compute.rb +9 -0
- data/lib/fog/brightbox/models/compute/load_balancer.rb +50 -0
- data/lib/fog/brightbox/models/compute/load_balancers.rb +28 -0
- data/lib/fog/brightbox/requests/compute/add_nodes_load_balancer.rb +28 -0
- data/lib/fog/brightbox/requests/compute/create_load_balancer.rb +27 -0
- data/lib/fog/brightbox/requests/compute/destroy_load_balancer.rb +28 -0
- data/lib/fog/brightbox/requests/compute/get_load_balancer.rb +28 -0
- data/lib/fog/brightbox/requests/compute/list_load_balancers.rb +27 -0
- data/lib/fog/brightbox/requests/compute/remove_nodes_load_balancer.rb +28 -0
- data/lib/fog/brightbox/requests/compute/update_load_balancer.rb +29 -0
- data/lib/fog/core.rb +1 -0
- data/lib/fog/core/dns.rb +25 -0
- data/lib/fog/core/mock.rb +34 -0
- data/lib/fog/google/models/storage/file.rb +14 -2
- data/lib/fog/linode/dns.rb +4 -0
- data/lib/fog/linode/models/dns/record.rb +69 -0
- data/lib/fog/linode/models/dns/records.rb +37 -0
- data/lib/fog/linode/models/dns/zone.rb +84 -0
- data/lib/fog/linode/models/dns/zones.rb +29 -0
- data/lib/fog/linode/requests/dns/domain_create.rb +2 -3
- data/lib/fog/linode/requests/dns/domain_resource_create.rb +3 -4
- data/lib/fog/linode/requests/dns/domain_resource_list.rb +5 -2
- data/lib/fog/linode/requests/dns/domain_resource_update.rb +2 -2
- data/lib/fog/linode/requests/dns/domain_update.rb +2 -2
- data/lib/fog/rackspace/requests/compute/create_image.rb +1 -1
- data/lib/fog/rackspace/requests/compute/create_server.rb +1 -1
- data/lib/fog/rackspace/requests/compute/get_flavor_details.rb +19 -1
- data/lib/fog/rackspace/requests/compute/list_flavors.rb +14 -1
- data/lib/fog/rackspace/requests/compute/list_flavors_detail.rb +14 -1
- data/lib/fog/slicehost/bin.rb +1 -1
- data/lib/fog/slicehost/dns.rb +4 -0
- data/lib/fog/slicehost/models/dns/record.rb +66 -0
- data/lib/fog/slicehost/models/dns/records.rb +36 -0
- data/lib/fog/slicehost/models/dns/zone.rb +69 -0
- data/lib/fog/slicehost/models/dns/zones.rb +28 -0
- data/lib/fog/slicehost/requests/dns/create_record.rb +2 -3
- data/lib/fog/slicehost/requests/dns/get_record.rb +1 -1
- data/lib/fog/vcloud/terremark/ecloud.rb +1 -1
- data/lib/fog/zerigo/models/dns/record.rb +14 -3
- data/lib/fog/zerigo/models/dns/records.rb +1 -1
- data/lib/fog/zerigo/models/dns/zone.rb +7 -1
- data/lib/fog/zerigo/models/dns/zones.rb +1 -1
- data/spec/spec_helper.rb +0 -24
- data/tests/aws/requests/iam/helper.rb +15 -0
- data/tests/aws/requests/simpledb/attributes_tests.rb +75 -0
- data/tests/aws/requests/simpledb/domain_tests.rb +51 -0
- data/tests/aws/requests/simpledb/helper.rb +16 -0
- data/tests/compute/helper.rb +36 -0
- data/tests/compute/models/flavors_tests.rb +9 -0
- data/tests/compute/models/server_tests.rb +9 -0
- data/tests/compute/models/servers_tests.rb +9 -0
- data/tests/{aws/requests/compute → compute/requests/aws}/address_tests.rb +0 -0
- data/tests/{aws/requests/compute → compute/requests/aws}/availability_zone_tests.rb +0 -0
- data/tests/{aws → compute/requests/aws}/helper.rb +0 -12
- data/tests/{aws/requests/compute → compute/requests/aws}/image_tests.rb +0 -0
- data/tests/{aws/requests/compute → compute/requests/aws}/instance_tests.rb +0 -0
- data/tests/{aws/requests/compute → compute/requests/aws}/key_pair_tests.rb +0 -0
- data/tests/{aws/requests/compute → compute/requests/aws}/region_tests.rb +0 -0
- data/tests/{aws/requests/compute → compute/requests/aws}/security_group_tests.rb +0 -0
- data/tests/{aws/requests/compute → compute/requests/aws}/snapshot_tests.rb +0 -0
- data/tests/{aws/requests/compute → compute/requests/aws}/tag_tests.rb +0 -0
- data/tests/{aws/requests/compute → compute/requests/aws}/volume_tests.rb +0 -0
- data/tests/{bluebox/requests/compute → compute/requests/bluebox}/block_tests.rb +0 -0
- data/tests/{bluebox → compute/requests/bluebox}/helper.rb +0 -0
- data/tests/{bluebox/requests/compute → compute/requests/bluebox}/product_tests.rb +0 -0
- data/tests/{bluebox/requests/compute → compute/requests/bluebox}/template_tests.rb +0 -0
- data/tests/{brightbox/requests/compute → compute/requests/brightbox}/account_tests.rb +0 -0
- data/tests/{brightbox/requests/compute → compute/requests/brightbox}/api_client_tests.rb +0 -0
- data/tests/{brightbox/requests/compute → compute/requests/brightbox}/cloud_ip_tests.rb +15 -7
- data/tests/{brightbox → compute/requests/brightbox}/helper.rb +68 -22
- data/tests/{brightbox/requests/compute → compute/requests/brightbox}/image_tests.rb +0 -0
- data/tests/{brightbox/requests/compute → compute/requests/brightbox}/interface_tests.rb +0 -0
- data/tests/compute/requests/brightbox/load_balancer_tests.rb +74 -0
- data/tests/{brightbox/requests/compute → compute/requests/brightbox}/server_tests.rb +1 -0
- data/tests/{brightbox/requests/compute → compute/requests/brightbox}/server_type_tests.rb +1 -0
- data/tests/{brightbox/requests/compute → compute/requests/brightbox}/user_tests.rb +0 -0
- data/tests/{brightbox/requests/compute → compute/requests/brightbox}/zone_tests.rb +1 -0
- data/tests/{go_grid/requests/compute → compute/requests/go_grid}/image_tests.rb +0 -0
- data/tests/{linode/requests/compute → compute/requests/linode}/datacenter_tests.rb +0 -0
- data/tests/{linode/requests/compute → compute/requests/linode}/distribution_tests.rb +0 -0
- data/tests/{linode → compute/requests/linode}/helper.rb +0 -0
- data/tests/{linode/requests/compute → compute/requests/linode}/linode_tests.rb +0 -0
- data/tests/{linode/requests/compute → compute/requests/linode}/linodeplans_tests.rb +0 -0
- data/tests/{rackspace/requests/compute → compute/requests/rackspace}/address_tests.rb +0 -0
- data/tests/{rackspace/requests/compute → compute/requests/rackspace}/flavor_tests.rb +0 -0
- data/tests/{rackspace → compute/requests/rackspace}/helper.rb +0 -0
- data/tests/{rackspace/requests/compute → compute/requests/rackspace}/image_tests.rb +7 -9
- data/tests/compute/requests/rackspace/resize_tests.rb +33 -0
- data/tests/{rackspace/requests/compute → compute/requests/rackspace}/server_tests.rb +0 -0
- data/tests/{slicehost/requests/compute → compute/requests/slicehost}/backup_tests.rb +0 -0
- data/tests/{slicehost/requests/compute → compute/requests/slicehost}/flavor_tests.rb +0 -0
- data/tests/{slicehost/requests/compute → compute/requests/slicehost}/image_tests.rb +0 -0
- data/tests/{slicehost/requests/compute → compute/requests/slicehost}/slice_tests.rb +0 -0
- data/tests/dns/helper.rb +19 -0
- data/tests/dns/models/record_tests.rb +25 -0
- data/tests/dns/models/records_tests.rb +25 -0
- data/tests/dns/models/zone_tests.rb +13 -0
- data/tests/dns/models/zones_tests.rb +13 -0
- data/tests/{aws/requests/dns → dns/requests/aws}/dns_tests.rb +0 -0
- data/tests/{linode/requests/dns → dns/requests/linode}/dns_tests.rb +0 -0
- data/tests/{slicehost/requests/dns_tests → dns/requests/slicehost}/dns_tests.rb +0 -0
- data/tests/{zerigo/requests/dns → dns/requests/zerigo}/dns_tests.rb +0 -0
- data/tests/helper.rb +1 -100
- data/tests/helpers/{collection_tests.rb → collection_helper.rb} +0 -0
- data/tests/helpers/compute/{flavors_tests.rb → flavors_helper.rb} +0 -0
- data/tests/helpers/compute/{server_tests.rb → server_helper.rb} +0 -0
- data/tests/helpers/compute/{servers_tests.rb → servers_helper.rb} +0 -0
- data/tests/helpers/formats_helper.rb +68 -0
- data/tests/{helper_tests.rb → helpers/formats_helper_tests.rb} +0 -0
- data/tests/helpers/{model_tests.rb → model_helper.rb} +0 -0
- data/tests/helpers/responds_to_helper.rb +13 -0
- data/tests/helpers/succeeds_helper.rb +12 -0
- data/tests/storage/helper.rb +16 -0
- data/tests/storage/models/directories_tests.rb +13 -0
- data/tests/storage/models/directory_test.rb +24 -0
- data/tests/storage/models/file_tests.rb +41 -0
- data/tests/storage/models/files_tests.rb +26 -0
- data/tests/{aws/requests/storage → storage/requests/aws}/bucket_tests.rb +0 -0
- data/tests/{aws/requests/storage → storage/requests/aws}/multipart_upload_tests.rb +0 -0
- data/tests/{aws/requests/storage → storage/requests/aws}/object_tests.rb +0 -0
- data/tests/{google/requests/storage → storage/requests/google}/bucket_tests.rb +0 -0
- data/tests/{google/requests/storage → storage/requests/google}/object_tests.rb +0 -0
- data/tests/{rackspace/requests/storage → storage/requests/rackspace}/container_tests.rb +0 -0
- data/tests/{rackspace/requests/storage → storage/requests/rackspace}/object_tests.rb +0 -0
- metadata +195 -224
- data/examples/bluebox_create.rb +0 -33
- data/examples/dns_methods.rb +0 -389
- data/spec/aws/requests/simpledb/batch_put_attributes_spec.rb +0 -31
- data/spec/aws/requests/simpledb/create_domain_spec.rb +0 -29
- data/spec/aws/requests/simpledb/delete_attributes_spec.rb +0 -39
- data/spec/aws/requests/simpledb/delete_domain_spec.rb +0 -28
- data/spec/aws/requests/simpledb/domain_metadata_spec.rb +0 -52
- data/spec/aws/requests/simpledb/get_attributes_spec.rb +0 -67
- data/spec/aws/requests/simpledb/list_domains_spec.rb +0 -30
- data/spec/aws/requests/simpledb/put_attributes_spec.rb +0 -49
- data/spec/aws/requests/simpledb/select_spec.rb +0 -27
- data/tests/aws/models/compute/flavors_tests.rb +0 -5
- data/tests/aws/models/compute/server_tests.rb +0 -6
- data/tests/aws/models/compute/servers_tests.rb +0 -6
- data/tests/aws/models/storage/directories_tests.rb +0 -5
- data/tests/aws/models/storage/directory_tests.rb +0 -5
- data/tests/aws/models/storage/file_tests.rb +0 -5
- data/tests/aws/models/storage/files_tests.rb +0 -5
- data/tests/bluebox/models/compute/flavors_tests.rb +0 -5
- data/tests/bluebox/models/compute/server_tests.rb +0 -5
- data/tests/bluebox/models/compute/servers_tests.rb +0 -6
- data/tests/brightbox/models/compute/flavors_tests.rb +0 -5
- data/tests/brightbox/models/compute/server_tests.rb +0 -6
- data/tests/brightbox/models/compute/servers_tests.rb +0 -6
- data/tests/go_grid/helper.rb +0 -0
- data/tests/google/models/storage/directories_tests.rb +0 -5
- data/tests/google/models/storage/directory_tests.rb +0 -5
- data/tests/google/models/storage/file_tests.rb +0 -5
- data/tests/google/models/storage/files_tests.rb +0 -5
- data/tests/helpers/storage/directories_tests.rb +0 -7
- data/tests/helpers/storage/directory_tests.rb +0 -18
- data/tests/helpers/storage/file_tests.rb +0 -27
- data/tests/helpers/storage/files_tests.rb +0 -13
- data/tests/local/models/storage/directories_tests.rb +0 -5
- data/tests/local/models/storage/directory_tests.rb +0 -5
- data/tests/local/models/storage/file_tests.rb +0 -5
- data/tests/local/models/storage/files_tests.rb +0 -5
- data/tests/rackspace/models/compute/flavors_tests.rb +0 -5
- data/tests/rackspace/models/compute/server_tests.rb +0 -6
- data/tests/rackspace/models/compute/servers_tests.rb +0 -6
- data/tests/rackspace/models/storage/directories_tests.rb +0 -5
- data/tests/rackspace/models/storage/directory_tests.rb +0 -5
- data/tests/rackspace/models/storage/file_tests.rb +0 -5
- data/tests/rackspace/models/storage/files_tests.rb +0 -5
- data/tests/rackspace/requests/compute/resize_tests.rb +0 -47
- data/tests/slicehost/helper.rb +0 -1
- data/tests/slicehost/models/compute/flavors_tests.rb +0 -5
- data/tests/slicehost/models/compute/server_tests.rb +0 -6
- data/tests/slicehost/models/compute/servers_tests.rb +0 -6
- data/tests/zerigo/helper.rb +0 -0
File without changes
|
File without changes
|
@@ -0,0 +1,74 @@
|
|
1
|
+
Shindo.tests('Brightbox::Compute | load balancer requests', ['brightbox']) do
|
2
|
+
|
3
|
+
tests('success') do
|
4
|
+
|
5
|
+
unless Fog.mocking?
|
6
|
+
@node = Brightbox[:compute].servers.create(:image_id => Brightbox::Compute::TestSupport::IMAGE_IDENTIFER)
|
7
|
+
node_id = @node.id
|
8
|
+
end
|
9
|
+
|
10
|
+
creation_args = {
|
11
|
+
:nodes => [{
|
12
|
+
:node => node_id
|
13
|
+
}],
|
14
|
+
:listeners => [{
|
15
|
+
:in => 80,
|
16
|
+
:out => 8080,
|
17
|
+
:protocol => "http"
|
18
|
+
}],
|
19
|
+
:healthcheck => {
|
20
|
+
:type => "http",
|
21
|
+
:port => 80
|
22
|
+
}
|
23
|
+
}
|
24
|
+
|
25
|
+
tests("#create_load_balancer(#{creation_args.inspect})").formats(Brightbox::Compute::Formats::Full::LOAD_BALANCER) do
|
26
|
+
pending if Fog.mocking?
|
27
|
+
data = Brightbox[:compute].create_load_balancer(creation_args)
|
28
|
+
@load_balancer_id = data["id"]
|
29
|
+
data
|
30
|
+
end
|
31
|
+
|
32
|
+
unless Fog.mocking?
|
33
|
+
Brightbox[:compute].load_balancers.get(@load_balancer_id).wait_for { ready? }
|
34
|
+
end
|
35
|
+
|
36
|
+
# tests("#list_load_balancers()").formats(Brightbox::Compute::Formats::Collection::LOAD_BALANCERS) do
|
37
|
+
# Brightbox[:compute].list_load_balancers
|
38
|
+
# end
|
39
|
+
|
40
|
+
tests("#get_load_balancer('#{@load_balancer_id}')").formats(Brightbox::Compute::Formats::Full::LOAD_BALANCER) do
|
41
|
+
pending if Fog.mocking?
|
42
|
+
Brightbox[:compute].get_load_balancer(@load_balancer_id)
|
43
|
+
end
|
44
|
+
|
45
|
+
tests("#destroy_load_balancer('#{@load_balancer_id}')").formats(Brightbox::Compute::Formats::Full::LOAD_BALANCER) do
|
46
|
+
pending if Fog.mocking?
|
47
|
+
Brightbox[:compute].destroy_load_balancer(@load_balancer_id)
|
48
|
+
end
|
49
|
+
|
50
|
+
unless Fog.mocking?
|
51
|
+
@node.destroy
|
52
|
+
end
|
53
|
+
|
54
|
+
end
|
55
|
+
|
56
|
+
tests('failure') do
|
57
|
+
|
58
|
+
tests("#create_load_balancer").raises(Excon::Errors::BadRequest) do
|
59
|
+
pending if Fog.mocking?
|
60
|
+
Brightbox[:compute].create_load_balancer
|
61
|
+
end
|
62
|
+
|
63
|
+
tests("#get_load_balancer('lba-00000')").raises(Excon::Errors::NotFound) do
|
64
|
+
pending if Fog.mocking?
|
65
|
+
Brightbox[:compute].get_load_balancer('lba-00000')
|
66
|
+
end
|
67
|
+
|
68
|
+
tests("#get_load_balancer").raises(ArgumentError) do
|
69
|
+
pending if Fog.mocking?
|
70
|
+
Brightbox[:compute].get_load_balancer
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
end
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -1,24 +1,22 @@
|
|
1
1
|
Shindo.tests('Rackspace::Compute | image requests', ['rackspace']) do
|
2
2
|
|
3
|
-
@
|
3
|
+
@image_format = {
|
4
|
+
'created' => Fog::Nullable::String,
|
4
5
|
'id' => Integer,
|
5
6
|
'name' => String,
|
7
|
+
'progress' => Fog::Nullable::Integer,
|
8
|
+
'serverId' => Fog::Nullable::Integer,
|
6
9
|
'status' => String,
|
7
|
-
'updated' => String
|
10
|
+
'updated' => String
|
8
11
|
}
|
9
12
|
|
10
|
-
@image_format = @images_format.merge({
|
11
|
-
'created' => String,
|
12
|
-
'progress' => Integer,
|
13
|
-
})
|
14
|
-
|
15
13
|
tests('success') do
|
16
14
|
|
17
15
|
@server = Rackspace[:compute].servers.create(:flavor_id => 1, :image_id => 19)
|
18
16
|
@server.wait_for { ready? }
|
19
17
|
@image_id = nil
|
20
18
|
|
21
|
-
tests("#create_image(#{@server.id})").formats(@
|
19
|
+
tests("#create_image(#{@server.id})").formats(@image_format) do
|
22
20
|
data = Rackspace[:compute].create_image(@server.id).body['image']
|
23
21
|
@image_id = data['id']
|
24
22
|
data
|
@@ -37,7 +35,7 @@ Shindo.tests('Rackspace::Compute | image requests', ['rackspace']) do
|
|
37
35
|
Rackspace[:compute].list_images.body
|
38
36
|
end
|
39
37
|
|
40
|
-
tests('#list_images_detail').formats({'images' => [@
|
38
|
+
tests('#list_images_detail').formats({'images' => [@image_format]}) do
|
41
39
|
Rackspace[:compute].list_images_detail.body
|
42
40
|
end
|
43
41
|
|
@@ -0,0 +1,33 @@
|
|
1
|
+
Shindo.tests('Rackspace::Compute | resize request', ['rackspace']) do
|
2
|
+
|
3
|
+
@confirm_server = Rackspace[:compute].servers.create(:flavor_id => 1, :image_id => 19)
|
4
|
+
|
5
|
+
@revert_server = Rackspace[:compute].servers.create(:flavor_id => 1, :image_id => 19)
|
6
|
+
|
7
|
+
@confirm_server.wait_for { ready? }
|
8
|
+
tests("#resize_server(#{@confirm_server.id}, 2) # to confirm").succeeds do
|
9
|
+
Rackspace[:compute].resize_server(@confirm_server.id, 2)
|
10
|
+
end
|
11
|
+
|
12
|
+
@revert_server.wait_for { ready? }
|
13
|
+
tests("#resize_server(#{@revert_server.id}, 2) # to revert").succeeds do
|
14
|
+
Rackspace[:compute].resize_server(@revert_server.id, 2)
|
15
|
+
end
|
16
|
+
|
17
|
+
@confirm_server.wait_for { status == 'VERIFY_RESIZE' }
|
18
|
+
tests("#confirm_resized_server(#{@confirm_server.id})").succeeds do
|
19
|
+
Rackspace[:compute].confirm_resized_server(@confirm_server.id)
|
20
|
+
end
|
21
|
+
|
22
|
+
@revert_server.wait_for { status == 'VERIFY_RESIZE' }
|
23
|
+
tests("#revert_resized_server(#{@revert_server.id})").succeeds do
|
24
|
+
Rackspace[:compute].revert_resized_server(@revert_server.id)
|
25
|
+
end
|
26
|
+
|
27
|
+
@confirm_server.wait_for { ready? }
|
28
|
+
@confirm_server.destroy
|
29
|
+
|
30
|
+
@revert_server.wait_for { ready? }
|
31
|
+
@revert_server.destroy
|
32
|
+
|
33
|
+
end
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/tests/dns/helper.rb
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
def dns_providers
|
2
|
+
{
|
3
|
+
AWS => {
|
4
|
+
:mocked => false
|
5
|
+
},
|
6
|
+
Linode => {
|
7
|
+
:mocked => false,
|
8
|
+
:zone_attributes => {
|
9
|
+
:email => 'fog@example.com'
|
10
|
+
}
|
11
|
+
},
|
12
|
+
Slicehost => {
|
13
|
+
:mocked => false
|
14
|
+
},
|
15
|
+
Zerigo => {
|
16
|
+
:mocked => false
|
17
|
+
}
|
18
|
+
}
|
19
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
for provider, config in dns_providers
|
2
|
+
|
3
|
+
Shindo.tests("#{provider}::DNS | record", [provider.to_s.downcase]) do
|
4
|
+
|
5
|
+
record_attributes = {
|
6
|
+
:ip => '1.2.3.4',
|
7
|
+
:name => 'www.fogrecordtests.com',
|
8
|
+
:type => 'A'
|
9
|
+
}.merge!(config[:record_attributes] || {})
|
10
|
+
|
11
|
+
if !Fog.mocking? || config[:mocked]
|
12
|
+
zone_attributes = {
|
13
|
+
:domain => 'fogrecordtests.com'
|
14
|
+
}.merge(config[:zone_attributes] || {})
|
15
|
+
|
16
|
+
@zone = provider[:dns].zones.create(zone_attributes)
|
17
|
+
|
18
|
+
model_tests(@zone.records, record_attributes, config[:mocked])
|
19
|
+
|
20
|
+
@zone.destroy
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
for provider, config in dns_providers
|
2
|
+
|
3
|
+
Shindo.tests("#{provider}::DNS | records", [provider.to_s.downcase]) do
|
4
|
+
|
5
|
+
record_attributes = {
|
6
|
+
:ip => '1.2.3.4',
|
7
|
+
:name => 'www.fogrecordstests.com',
|
8
|
+
:type => 'A'
|
9
|
+
}.merge!(config[:record_attributes] || {})
|
10
|
+
|
11
|
+
if !Fog.mocking? || config[:mocked]
|
12
|
+
zone_attributes = {
|
13
|
+
:domain => 'fogrecordstests.com'
|
14
|
+
}.merge(config[:zone_attributes] || {})
|
15
|
+
|
16
|
+
@zone = provider[:dns].zones.create(zone_attributes)
|
17
|
+
|
18
|
+
collection_tests(@zone.records, record_attributes, config[:mocked])
|
19
|
+
|
20
|
+
@zone.destroy
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
for provider, config in dns_providers
|
2
|
+
|
3
|
+
Shindo.tests("#{provider}::DNS | zone", [provider.to_s.downcase]) do
|
4
|
+
|
5
|
+
zone_attributes = {
|
6
|
+
:domain => 'fogzonetests.com'
|
7
|
+
}.merge!(config[:zone_attributes] || {})
|
8
|
+
|
9
|
+
model_tests(provider[:dns].zones, zone_attributes, config[:mocked])
|
10
|
+
|
11
|
+
end
|
12
|
+
|
13
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
for provider, config in dns_providers
|
2
|
+
|
3
|
+
Shindo.tests("#{provider}::DNS | zones", [provider.to_s.downcase]) do
|
4
|
+
|
5
|
+
zone_attributes = {
|
6
|
+
:domain => 'fogzonestests.com'
|
7
|
+
}.merge!(config[:zone_attributes] || {})
|
8
|
+
|
9
|
+
collection_tests(provider[:dns].zones, zone_attributes, config[:mocked])
|
10
|
+
|
11
|
+
end
|
12
|
+
|
13
|
+
end
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/tests/helper.rb
CHANGED
@@ -1,25 +1,7 @@
|
|
1
1
|
require File.join(File.dirname(__FILE__), '..', 'lib', 'fog')
|
2
2
|
require 'fog/core/bin'
|
3
3
|
|
4
|
-
|
5
|
-
|
6
|
-
$LOAD_PATH.unshift __DIR__ unless
|
7
|
-
$LOAD_PATH.include?(__DIR__) ||
|
8
|
-
$LOAD_PATH.include?(File.expand_path(__DIR__))
|
9
|
-
|
10
|
-
require 'helpers/collection_tests'
|
11
|
-
require 'helpers/model_tests'
|
12
|
-
|
13
|
-
require 'helpers/compute/flavors_tests'
|
14
|
-
require 'helpers/compute/server_tests'
|
15
|
-
require 'helpers/compute/servers_tests'
|
16
|
-
|
17
|
-
require 'helpers/storage/directory_tests'
|
18
|
-
require 'helpers/storage/directories_tests'
|
19
|
-
require 'helpers/storage/file_tests'
|
20
|
-
require 'helpers/storage/files_tests'
|
21
|
-
|
22
|
-
# Use so you can run in mock mode from the command line:
|
4
|
+
# Use so you can run in mock mode from the command line
|
23
5
|
#
|
24
6
|
# FOG_MOCK=true fog
|
25
7
|
|
@@ -35,87 +17,6 @@ for provider in (all_providers - available_providers)
|
|
35
17
|
Thread.current[:tags] << ('-' << provider)
|
36
18
|
end
|
37
19
|
|
38
|
-
# Boolean hax
|
39
|
-
module Fog
|
40
|
-
module Boolean
|
41
|
-
end
|
42
|
-
end
|
43
|
-
FalseClass.send(:include, Fog::Boolean)
|
44
|
-
TrueClass.send(:include, Fog::Boolean)
|
45
|
-
|
46
20
|
def lorem_file
|
47
21
|
File.open(File.dirname(__FILE__) + '/lorem.txt', 'r')
|
48
22
|
end
|
49
|
-
|
50
|
-
module Shindo
|
51
|
-
class Tests
|
52
|
-
|
53
|
-
def responds_to(method_names)
|
54
|
-
for method_name in [*method_names]
|
55
|
-
tests("#respond_to?(:#{method_name})").succeeds do
|
56
|
-
@instance.respond_to?(method_name)
|
57
|
-
end
|
58
|
-
end
|
59
|
-
end
|
60
|
-
|
61
|
-
def formats(format)
|
62
|
-
test('has proper format') do
|
63
|
-
formats_kernel(instance_eval(&Proc.new), format)
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
def succeeds
|
68
|
-
test('succeeds') do
|
69
|
-
instance_eval(&Proc.new)
|
70
|
-
true
|
71
|
-
end
|
72
|
-
end
|
73
|
-
|
74
|
-
private
|
75
|
-
|
76
|
-
def formats_kernel(original_data, original_format, original = true)
|
77
|
-
valid = true
|
78
|
-
data = original_data.dup
|
79
|
-
format = original_format.dup
|
80
|
-
if format.is_a?(Array)
|
81
|
-
data = {:element => data}
|
82
|
-
format = {:element => format}
|
83
|
-
end
|
84
|
-
for key, value in format
|
85
|
-
valid &&= data.has_key?(key)
|
86
|
-
datum = data.delete(key)
|
87
|
-
format.delete(key)
|
88
|
-
case value
|
89
|
-
when Array
|
90
|
-
valid &&= datum.is_a?(Array)
|
91
|
-
if datum.is_a?(Array)
|
92
|
-
for element in datum
|
93
|
-
type = value.first
|
94
|
-
if type.is_a?(Hash)
|
95
|
-
valid &&= formats_kernel({:element => element}, {:element => type}, false)
|
96
|
-
elsif type.nil?
|
97
|
-
p "#{key} => #{value}"
|
98
|
-
else
|
99
|
-
valid &&= element.is_a?(type)
|
100
|
-
end
|
101
|
-
end
|
102
|
-
end
|
103
|
-
when Hash
|
104
|
-
valid &&= datum.is_a?(Hash)
|
105
|
-
valid &&= formats_kernel(datum, value, false)
|
106
|
-
else
|
107
|
-
p "#{key} => #{value}" unless datum.is_a?(value)
|
108
|
-
valid &&= datum.is_a?(value)
|
109
|
-
end
|
110
|
-
end
|
111
|
-
p data unless data.empty?
|
112
|
-
p format unless format.empty?
|
113
|
-
valid &&= data.empty? && format.empty?
|
114
|
-
if !valid && original
|
115
|
-
@message = "#{original_data.inspect} does not match #{original_format.inspect}"
|
116
|
-
end
|
117
|
-
valid
|
118
|
-
end
|
119
|
-
|
120
|
-
end
|
121
|
-
end
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|