fog-azure-rm 0.2.7 → 0.3.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +13 -0
- data/fog-azure-rm.gemspec +8 -8
- data/lib/fog/azurerm.rb +5 -0
- data/lib/fog/azurerm/async_response.rb +36 -0
- data/lib/fog/azurerm/compute.rb +15 -1
- data/lib/fog/azurerm/constants.rb +6 -0
- data/lib/fog/azurerm/docs/compute.md +145 -2
- data/lib/fog/azurerm/models/compute/creation_data.rb +21 -0
- data/lib/fog/azurerm/models/compute/disk_create_option.rb +16 -0
- data/lib/fog/azurerm/models/compute/encryption_settings.rb +29 -0
- data/lib/fog/azurerm/models/compute/image_disk_reference.rb +15 -0
- data/lib/fog/azurerm/models/compute/managed_disk.rb +77 -0
- data/lib/fog/azurerm/models/compute/managed_disks.rb +43 -0
- data/lib/fog/azurerm/models/compute/operation_status_response.rb +18 -0
- data/lib/fog/azurerm/models/compute/server.rb +12 -7
- data/lib/fog/azurerm/models/compute/servers.rb +6 -0
- data/lib/fog/azurerm/models/traffic_manager/traffic_manager_profile.rb +1 -0
- data/lib/fog/azurerm/requests/compute/check_managed_disk_exists.rb +33 -0
- data/lib/fog/azurerm/requests/compute/create_or_update_managed_disk.rb +121 -0
- data/lib/fog/azurerm/requests/compute/create_virtual_machine.rb +24 -11
- data/lib/fog/azurerm/requests/compute/delete_managed_disk.rb +29 -0
- data/lib/fog/azurerm/requests/compute/delete_virtual_machine.rb +1 -1
- data/lib/fog/azurerm/requests/compute/get_managed_disk.rb +64 -0
- data/lib/fog/azurerm/requests/compute/grant_access_to_managed_disk.rb +30 -0
- data/lib/fog/azurerm/requests/compute/list_managed_disks_by_rg.rb +66 -0
- data/lib/fog/azurerm/requests/compute/list_managed_disks_in_subscription.rb +66 -0
- data/lib/fog/azurerm/requests/compute/revoke_access_to_managed_disk.rb +33 -0
- data/lib/fog/azurerm/requests/dns/check_zone_exists.rb +5 -1
- data/lib/fog/azurerm/requests/network/check_net_sec_rule_exists.rb +1 -1
- data/lib/fog/azurerm/requests/network/check_subnet_exists.rb +1 -1
- data/lib/fog/azurerm/utilities/general.rb +13 -10
- data/lib/fog/azurerm/version.rb +1 -1
- data/test/api_stub.rb +2 -0
- data/test/api_stub/models/compute/managed_disk.rb +59 -0
- data/test/api_stub/requests/compute/managed_disk.rb +102 -0
- data/test/api_stub/requests/compute/virtual_machine.rb +6 -6
- data/test/integration/Virtual_network_gateway_connection.rb +0 -6
- data/test/integration/application_gateway.rb +1 -1
- data/test/integration/credentials/azure.yml +1 -1
- data/test/integration/managed_disk.rb +113 -0
- data/test/integration/server.rb +39 -1
- data/test/integration/traffic_manager.rb +2 -2
- data/test/models/compute/test_managed_disk.rb +61 -0
- data/test/models/compute/test_managed_disks.rb +68 -0
- data/test/models/compute/test_server.rb +7 -1
- data/test/models/compute/test_servers.rb +1 -0
- data/test/requests/compute/test_check_managed_disk_exists.rb +31 -0
- data/test/requests/compute/test_create_or_update_managed_disk.rb +38 -0
- data/test/requests/compute/test_create_virtual_machine.rb +27 -0
- data/test/requests/compute/test_delete_managed_disk.rb +23 -0
- data/test/requests/compute/test_get_managed_disk.rb +24 -0
- data/test/requests/compute/test_grant_access_to_managed_disk.rb +26 -0
- data/test/requests/compute/test_list_managed_disks_by_rg.rb +24 -0
- data/test/requests/compute/test_list_managed_disks_in_subscription.rb +24 -0
- data/test/requests/compute/test_revoke_access_to_managed_disk.rb +24 -0
- data/test/test_helper.rb +15 -1
- metadata +47 -18
@@ -15,7 +15,7 @@ module ApiStub
|
|
15
15
|
disable_password_authentication: false,
|
16
16
|
ssh_key_path: '/home',
|
17
17
|
ssh_key_data: 'key',
|
18
|
-
|
18
|
+
network_interface_card_ids: ['nic-id'],
|
19
19
|
availability_set_id: 'as-id',
|
20
20
|
publisher: 'Canonical',
|
21
21
|
offer: 'UbuntuServer',
|
@@ -39,7 +39,7 @@ module ApiStub
|
|
39
39
|
disable_password_authentication: nil,
|
40
40
|
ssh_key_path: '/home',
|
41
41
|
ssh_key_data: 'key',
|
42
|
-
|
42
|
+
network_interface_card_ids: ['nic-id'],
|
43
43
|
availability_set_id: 'as-id',
|
44
44
|
publisher: 'MicrosoftWindowsServerEssentials',
|
45
45
|
offer: 'WindowsServerEssentials',
|
@@ -63,7 +63,7 @@ module ApiStub
|
|
63
63
|
disable_password_authentication: false,
|
64
64
|
ssh_key_path: '/home',
|
65
65
|
ssh_key_data: 'key',
|
66
|
-
|
66
|
+
network_interface_card_ids: ['nic-id'],
|
67
67
|
availability_set_id: 'as-id',
|
68
68
|
publisher: 'Canonical',
|
69
69
|
offer: 'UbuntuServer',
|
@@ -88,7 +88,7 @@ module ApiStub
|
|
88
88
|
disable_password_authentication: nil,
|
89
89
|
ssh_key_path: '/home',
|
90
90
|
ssh_key_data: 'key',
|
91
|
-
|
91
|
+
network_interface_card_ids: ['nic-id'],
|
92
92
|
availability_set_id: 'as-id',
|
93
93
|
publisher: 'MicrosoftWindowsServerEssentials',
|
94
94
|
offer: 'WindowsServerEssentials',
|
@@ -113,7 +113,7 @@ module ApiStub
|
|
113
113
|
disable_password_authentication: false,
|
114
114
|
ssh_key_path: '/home',
|
115
115
|
ssh_key_data: 'key',
|
116
|
-
|
116
|
+
network_interface_card_ids: ['nic-id'],
|
117
117
|
availability_set_id: 'as-id',
|
118
118
|
platform: 'Linux',
|
119
119
|
provision_vm_agent: nil,
|
@@ -134,7 +134,7 @@ module ApiStub
|
|
134
134
|
disable_password_authentication: nil,
|
135
135
|
ssh_key_path: '/home',
|
136
136
|
ssh_key_data: 'key',
|
137
|
-
|
137
|
+
network_interface_card_ids: ['nic-id'],
|
138
138
|
availability_set_id: 'as-id',
|
139
139
|
platform: 'Windows',
|
140
140
|
provision_vm_agent: true,
|
@@ -212,12 +212,6 @@ begin
|
|
212
212
|
pubip = network.public_ips.get('TestRG-GC', 'mypubip2')
|
213
213
|
pubip.destroy
|
214
214
|
|
215
|
-
vnet = network.virtual_networks.get('TestRG-GC', 'testVnet')
|
216
|
-
vnet.destroy
|
217
|
-
|
218
|
-
vnet = network.virtual_networks.get('TestRG-GC', 'testVnet2')
|
219
|
-
vnet.destroy
|
220
|
-
|
221
215
|
resource_group = resource.resource_groups.get('TestRG-GC')
|
222
216
|
resource_group.destroy
|
223
217
|
rescue
|
@@ -0,0 +1,113 @@
|
|
1
|
+
require 'fog/azurerm'
|
2
|
+
require 'yaml'
|
3
|
+
|
4
|
+
########################################################################################################################
|
5
|
+
###################### Services object required by all actions ######################
|
6
|
+
###################### Keep it Uncommented! ######################
|
7
|
+
########################################################################################################################
|
8
|
+
|
9
|
+
azure_credentials = YAML.load_file('credentials/azure.yml')
|
10
|
+
|
11
|
+
rs = Fog::Resources::AzureRM.new(
|
12
|
+
tenant_id: azure_credentials['tenant_id'],
|
13
|
+
client_id: azure_credentials['client_id'],
|
14
|
+
client_secret: azure_credentials['client_secret'],
|
15
|
+
subscription_id: azure_credentials['subscription_id'],
|
16
|
+
environment: azure_credentials['environment']
|
17
|
+
)
|
18
|
+
|
19
|
+
compute = Fog::Compute::AzureRM.new(
|
20
|
+
tenant_id: azure_credentials['tenant_id'],
|
21
|
+
client_id: azure_credentials['client_id'],
|
22
|
+
client_secret: azure_credentials['client_secret'],
|
23
|
+
subscription_id: azure_credentials['subscription_id'],
|
24
|
+
environment: azure_credentials['environment']
|
25
|
+
)
|
26
|
+
|
27
|
+
########################################################################################################################
|
28
|
+
###################### Resource names #####################
|
29
|
+
########################################################################################################################
|
30
|
+
|
31
|
+
time = current_time
|
32
|
+
resource_group_name = "MD-RG-#{time}"
|
33
|
+
disk_name = "MD#{time}diskunique"
|
34
|
+
|
35
|
+
########################################################################################################################
|
36
|
+
###################### Prerequisites ######################
|
37
|
+
########################################################################################################################
|
38
|
+
|
39
|
+
begin
|
40
|
+
rs.resource_groups.create(
|
41
|
+
name: resource_group_name,
|
42
|
+
location: LOCATION
|
43
|
+
)
|
44
|
+
|
45
|
+
########################################################################################################################
|
46
|
+
###################### Check for Managed Disk ######################
|
47
|
+
########################################################################################################################
|
48
|
+
|
49
|
+
flag = compute.managed_disks.check_managed_disk_exists(resource_group_name, disk_name)
|
50
|
+
puts "Managed Disk doesn't exist." unless flag
|
51
|
+
|
52
|
+
########################################################################################################################
|
53
|
+
###################### Create Managed Disk ######################
|
54
|
+
########################################################################################################################
|
55
|
+
|
56
|
+
disk = compute.managed_disks.create(
|
57
|
+
name: disk_name,
|
58
|
+
location: LOCATION,
|
59
|
+
resource_group_name: resource_group_name,
|
60
|
+
account_type: 'Premium_LRS',
|
61
|
+
disk_size_gb: 1023,
|
62
|
+
creation_data: {
|
63
|
+
create_option: 'Empty'
|
64
|
+
}
|
65
|
+
)
|
66
|
+
puts "Created managed disk: #{disk.name}"
|
67
|
+
|
68
|
+
########################################################################################################################
|
69
|
+
###################### Grant and revoke access ######################
|
70
|
+
########################################################################################################################
|
71
|
+
|
72
|
+
access_sas = compute.managed_disks.grant_access(resource_group_name, disk_name, 'Read', 1000)
|
73
|
+
puts "Access SAS: #{access_sas}"
|
74
|
+
|
75
|
+
response = compute.managed_disks.revoke_access(resource_group_name, disk_name)
|
76
|
+
puts "Revoke Access response: #{response.inspect}"
|
77
|
+
|
78
|
+
########################################################################################################################
|
79
|
+
###################### List Managed Disks ######################
|
80
|
+
########################################################################################################################
|
81
|
+
puts 'List managed disks:'
|
82
|
+
compute.managed_disks(resource_group: resource_group_name).each do |managed_disk|
|
83
|
+
puts managed_disk.name
|
84
|
+
end
|
85
|
+
|
86
|
+
########################################################################################################################
|
87
|
+
###################### List all Managed Disks in a subscription ######################
|
88
|
+
########################################################################################################################
|
89
|
+
|
90
|
+
puts 'List managed disks in Subscription:'
|
91
|
+
compute.managed_disks.each do |m_disk|
|
92
|
+
puts m_disk.name
|
93
|
+
end
|
94
|
+
|
95
|
+
########################################################################################################################
|
96
|
+
###################### Get and Delete Managed Disk ######################
|
97
|
+
########################################################################################################################
|
98
|
+
|
99
|
+
disk = compute.managed_disks.get(resource_group_name, disk_name)
|
100
|
+
puts "Get managed disk: #{disk.inspect}"
|
101
|
+
puts "Deleted managed disk: #{disk.destroy}"
|
102
|
+
|
103
|
+
########################################################################################################################
|
104
|
+
###################### CleanUp ######################
|
105
|
+
########################################################################################################################
|
106
|
+
|
107
|
+
rg = rs.resource_groups.get(resource_group_name)
|
108
|
+
rg.destroy
|
109
|
+
puts 'Integration Test for managed disk ran successfully'
|
110
|
+
rescue
|
111
|
+
puts 'Integration Test for managed disk is failing'
|
112
|
+
resource_group.destroy unless resource_group.nil?
|
113
|
+
end
|
data/test/integration/server.rb
CHANGED
@@ -99,7 +99,7 @@ begin
|
|
99
99
|
username: 'testuser',
|
100
100
|
password: 'Confiz=123',
|
101
101
|
disable_password_authentication: false,
|
102
|
-
|
102
|
+
network_interface_card_ids: ["/subscriptions/#{azure_credentials['subscription_id']}/resourceGroups/TestRG-VM/providers/Microsoft.Network/networkInterfaces/NetInt"],
|
103
103
|
publisher: 'Canonical',
|
104
104
|
offer: 'UbuntuServer',
|
105
105
|
sku: '14.04.2-LTS',
|
@@ -110,6 +110,44 @@ begin
|
|
110
110
|
)
|
111
111
|
puts "Created virtual machine: #{virtual_machine.name}"
|
112
112
|
|
113
|
+
########################################################################################################################
|
114
|
+
###################### Create Server Async ####################
|
115
|
+
########################################################################################################################
|
116
|
+
|
117
|
+
async_response = compute.servers.create_async(
|
118
|
+
name: 'TestVM',
|
119
|
+
location: LOCATION,
|
120
|
+
resource_group: 'TestRG-VM',
|
121
|
+
vm_size: 'Basic_A0',
|
122
|
+
storage_account_name: storage_account_name,
|
123
|
+
username: 'testuser',
|
124
|
+
password: 'Confiz=123',
|
125
|
+
disable_password_authentication: false,
|
126
|
+
network_interface_card_ids: ["/subscriptions/#{azure_credentials['subscription_id']}/resourceGroups/TestRG-VM/providers/Microsoft.Network/networkInterfaces/NetInt"],
|
127
|
+
publisher: 'Canonical',
|
128
|
+
offer: 'UbuntuServer',
|
129
|
+
sku: '14.04.2-LTS',
|
130
|
+
version: 'latest',
|
131
|
+
platform: 'linux',
|
132
|
+
custom_data: 'echo customData',
|
133
|
+
os_disk_caching: Fog::ARM::Compute::Models::CachingTypes::None
|
134
|
+
)
|
135
|
+
loop do
|
136
|
+
puts async_response.state
|
137
|
+
|
138
|
+
sleep(2) if async_response.pending?
|
139
|
+
|
140
|
+
if async_response.fulfilled?
|
141
|
+
puts async_response.value.inspect
|
142
|
+
break
|
143
|
+
end
|
144
|
+
|
145
|
+
if async_response.rejected?
|
146
|
+
puts async_response.reason.inspect
|
147
|
+
break
|
148
|
+
end
|
149
|
+
end
|
150
|
+
|
113
151
|
########################################################################################################################
|
114
152
|
###################### Attach Data Disk to VM ######################
|
115
153
|
########################################################################################################################
|
@@ -80,7 +80,7 @@ begin
|
|
80
80
|
traffic_manager_profile_name: 'test-tmp',
|
81
81
|
resource_group: 'TestRG-TM',
|
82
82
|
type: 'externalEndpoints',
|
83
|
-
target: 'test-
|
83
|
+
target: 'test-app1.com',
|
84
84
|
endpoint_location: 'eastus'
|
85
85
|
)
|
86
86
|
puts "Created traffic manager endpoint: #{traffic_manager_end_point.name}"
|
@@ -93,7 +93,7 @@ begin
|
|
93
93
|
puts "Get traffic manager endpoint: #{end_point.name}"
|
94
94
|
end_point.update(
|
95
95
|
type: 'externalEndpoints',
|
96
|
-
target: 'test-
|
96
|
+
target: 'test-app2.com',
|
97
97
|
endpoint_location: 'centralus'
|
98
98
|
)
|
99
99
|
puts 'Updated traffic manager endpoint'
|
@@ -0,0 +1,61 @@
|
|
1
|
+
require File.expand_path '../../test_helper', __dir__
|
2
|
+
|
3
|
+
# Test class for Managed Disk Model
|
4
|
+
class TestManagedDisk < Minitest::Test
|
5
|
+
def setup
|
6
|
+
@service = Fog::Compute::AzureRM.new(credentials)
|
7
|
+
@managed_disk = managed_disk(@service)
|
8
|
+
compute_client = @service.instance_variable_get(:@compute_mgmt_client)
|
9
|
+
@response = ApiStub::Models::Compute::ManagedDisk.create_managed_disk_response(compute_client)
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_model_methods
|
13
|
+
methods = [
|
14
|
+
:save,
|
15
|
+
:destroy
|
16
|
+
]
|
17
|
+
methods.each do |method|
|
18
|
+
assert_respond_to @managed_disk, method
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_model_attributes
|
23
|
+
attributes = [
|
24
|
+
:id,
|
25
|
+
:name,
|
26
|
+
:type,
|
27
|
+
:location,
|
28
|
+
:resource_group_name,
|
29
|
+
:account_type,
|
30
|
+
:time_created,
|
31
|
+
:os_type,
|
32
|
+
:disk_size_gb,
|
33
|
+
:owner_id,
|
34
|
+
:provisioning_state,
|
35
|
+
:tags,
|
36
|
+
:creation_data,
|
37
|
+
:encryption_settings
|
38
|
+
]
|
39
|
+
attributes.each do |attribute|
|
40
|
+
assert_respond_to @managed_disk, attribute
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_save_method_response
|
45
|
+
@service.stub :create_or_update_managed_disk, @response do
|
46
|
+
assert_instance_of Fog::Compute::AzureRM::ManagedDisk, @managed_disk.save
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_destroy_method_true_response
|
51
|
+
@service.stub :delete_managed_disk, true do
|
52
|
+
assert @managed_disk.destroy
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def test_destroy_method_false_response
|
57
|
+
@service.stub :delete_managed_disk, false do
|
58
|
+
assert !@managed_disk.destroy
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
require File.expand_path '../../test_helper', __dir__
|
2
|
+
|
3
|
+
# Test class for Managed Disk Collection
|
4
|
+
class TestManagedDisks < Minitest::Test
|
5
|
+
def setup
|
6
|
+
@service = Fog::Compute::AzureRM.new(credentials)
|
7
|
+
@managed_disks = Fog::Compute::AzureRM::ManagedDisks.new(resource_group: 'fog-test-rg', service: @service)
|
8
|
+
@client = @service.instance_variable_get(:@compute_mgmt_client)
|
9
|
+
@managed_disk_list = [ApiStub::Models::Compute::ManagedDisk.create_managed_disk_response(@client)]
|
10
|
+
@managed_disk = ApiStub::Models::Compute::ManagedDisk.create_managed_disk_response(@client)
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_collection_methods
|
14
|
+
methods = [
|
15
|
+
:all,
|
16
|
+
:get,
|
17
|
+
:check_managed_disk_exists
|
18
|
+
]
|
19
|
+
methods.each do |method|
|
20
|
+
assert_respond_to @managed_disks, method
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_collection_attributes
|
25
|
+
assert_respond_to @managed_disks, :resource_group
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_all_method_response
|
29
|
+
@service.stub :list_managed_disks_by_rg, @managed_disk_list do
|
30
|
+
assert_instance_of Fog::Compute::AzureRM::ManagedDisks, @managed_disks.all
|
31
|
+
assert @managed_disks.all.size >= 1
|
32
|
+
@managed_disks.all.each do |disk|
|
33
|
+
assert_instance_of Fog::Compute::AzureRM::ManagedDisk, disk
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
def test_get_method_response
|
39
|
+
@service.stub :get_managed_disk, @managed_disk do
|
40
|
+
assert_instance_of Fog::Compute::AzureRM::ManagedDisk, @managed_disks.get('fog-test-rg', 'fog-test-managed_disk')
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_check_managed_disk_exists_true_case
|
45
|
+
@service.stub :check_managed_disk_exists, true do
|
46
|
+
assert @managed_disks.check_managed_disk_exists('fog-test-rg', 'fog-test-managed_disk')
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_check_managed_disk_exists_false_case
|
51
|
+
@service.stub :check_managed_disk_exists, false do
|
52
|
+
assert !@managed_disks.check_managed_disk_exists('fog-test-rg', 'fog-test-managed_disk')
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def test_grant_access_response
|
57
|
+
@service.stub :grant_access_to_managed_disk, 'DUMMY-URI' do
|
58
|
+
assert_equal(@managed_disks.grant_access('fog-test-rg', 'fog-test-managed_disk', 'Read', 100), 'DUMMY-URI')
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
def test_revoke_access_response
|
63
|
+
response = ApiStub::Models::Compute::ManagedDisk.operation_status_response(@client)
|
64
|
+
@service.stub :revoke_access_to_managed_disk, response do
|
65
|
+
assert_equal(@managed_disks.revoke_access('fog-test-rg', 'fog-test-managed_disk').status, 'success')
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
@@ -51,7 +51,7 @@ class TestServer < Minitest::Test
|
|
51
51
|
:platform,
|
52
52
|
:provision_vm_agent,
|
53
53
|
:enable_automatic_updates,
|
54
|
-
:
|
54
|
+
:network_interface_card_ids,
|
55
55
|
:availability_set_id
|
56
56
|
]
|
57
57
|
attributes.each do |attribute|
|
@@ -64,6 +64,12 @@ class TestServer < Minitest::Test
|
|
64
64
|
@service.stub :create_virtual_machine, response do
|
65
65
|
assert_instance_of Fog::Compute::AzureRM::Server, @server.save
|
66
66
|
end
|
67
|
+
|
68
|
+
# Async
|
69
|
+
async_response = Concurrent::Promise.execute { 10 }
|
70
|
+
@service.stub :create_virtual_machine, async_response do
|
71
|
+
assert_instance_of Concurrent::Promise, @server.save(true)
|
72
|
+
end
|
67
73
|
end
|
68
74
|
|
69
75
|
def test_save_method_response_for_windows_vm
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require File.expand_path '../../test_helper', __dir__
|
2
|
+
|
3
|
+
# Test class for Check Managed Disk Exists Request
|
4
|
+
class TestCheckManagedDiskExists < Minitest::Test
|
5
|
+
def setup
|
6
|
+
@service = Fog::Compute::AzureRM.new(credentials)
|
7
|
+
@client = @service.instance_variable_get(:@compute_mgmt_client)
|
8
|
+
@managed_disks = @client.disks
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_check_managed_disk_exists_success
|
12
|
+
mocked_response = ApiStub::Requests::Compute::ManagedDisk.get_managed_disk_response(@client)
|
13
|
+
@managed_disks.stub :get, mocked_response do
|
14
|
+
assert @service.check_managed_disk_exists('myrg1', 'mydisk1')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_check_managed_disk_exists_failure
|
19
|
+
response = proc { raise MsRestAzure::AzureOperationError.new(nil, nil, 'error' => { 'message' => 'mocked exception', 'code' => 'ResourceNotFound' }) }
|
20
|
+
@managed_disks.stub :get, response do
|
21
|
+
assert !@service.check_managed_disk_exists('myrg1', 'mydisk1')
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_check_managed_disk_exists_exception
|
26
|
+
response = proc { raise MsRestAzure::AzureOperationError.new(nil, nil, 'error' => { 'message' => 'mocked exception', 'code' => 'ResourceGroupNotFound' }) }
|
27
|
+
@managed_disks.stub :get, response do
|
28
|
+
assert_raises(RuntimeError) { @service.check_managed_disk_exists('myrg1', 'mydisk1') }
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|