stuartpreston-azure-sdk-for-ruby 0.7.1 → 0.7.2

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.
Files changed (290) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +11 -11
  3. data/.travis.yml +10 -10
  4. data/ChangeLog.txt +70 -68
  5. data/Gemfile +15 -15
  6. data/README.md +618 -618
  7. data/Rakefile +133 -133
  8. data/azure.gemspec +44 -44
  9. data/lib/azure.rb +52 -52
  10. data/lib/azure/base_management/affinity_group.rb +32 -32
  11. data/lib/azure/base_management/base_management_service.rb +304 -304
  12. data/lib/azure/base_management/location.rb +27 -27
  13. data/lib/azure/base_management/management_http_request.rb +171 -171
  14. data/lib/azure/base_management/serialization.rb +129 -129
  15. data/lib/azure/base_management/sql_management_http_request.rb +45 -45
  16. data/lib/azure/blob/blob.rb +31 -31
  17. data/lib/azure/blob/blob_service.rb +1423 -1423
  18. data/lib/azure/blob/block.rb +30 -30
  19. data/lib/azure/blob/container.rb +31 -31
  20. data/lib/azure/blob/serialization.rb +284 -284
  21. data/lib/azure/cloud_service_management/cloud_service.rb +38 -38
  22. data/lib/azure/cloud_service_management/cloud_service_management_service.rb +140 -140
  23. data/lib/azure/cloud_service_management/serialization.rb +117 -117
  24. data/lib/azure/core.rb +39 -39
  25. data/lib/azure/core/auth/authorizer.rb +36 -36
  26. data/lib/azure/core/auth/shared_key.rb +110 -110
  27. data/lib/azure/core/auth/shared_key_lite.rb +48 -48
  28. data/lib/azure/core/auth/signer.rb +48 -48
  29. data/lib/azure/core/configuration.rb +211 -211
  30. data/lib/azure/core/error.rb +22 -22
  31. data/lib/azure/core/filtered_service.rb +43 -43
  32. data/lib/azure/core/http/debug_filter.rb +35 -35
  33. data/lib/azure/core/http/http_error.rb +88 -88
  34. data/lib/azure/core/http/http_filter.rb +52 -52
  35. data/lib/azure/core/http/http_request.rb +157 -157
  36. data/lib/azure/core/http/http_response.rb +140 -140
  37. data/lib/azure/core/http/retry_policy.rb +73 -73
  38. data/lib/azure/core/http/signer_filter.rb +33 -33
  39. data/lib/azure/core/service.rb +62 -62
  40. data/lib/azure/core/signed_service.rb +42 -42
  41. data/lib/azure/core/utility.rb +190 -190
  42. data/lib/azure/queue/message.rb +29 -29
  43. data/lib/azure/queue/queue.rb +28 -28
  44. data/lib/azure/queue/queue_service.rb +567 -567
  45. data/lib/azure/queue/serialization.rb +106 -106
  46. data/lib/azure/service/access_policy.rb +25 -25
  47. data/lib/azure/service/cors.rb +11 -11
  48. data/lib/azure/service/cors_rule.rb +15 -15
  49. data/lib/azure/service/enumeration_results.rb +20 -20
  50. data/lib/azure/service/logging.rb +31 -31
  51. data/lib/azure/service/metrics.rb +30 -30
  52. data/lib/azure/service/retention_policy.rb +24 -24
  53. data/lib/azure/service/serialization.rb +297 -297
  54. data/lib/azure/service/signed_identifier.rb +29 -29
  55. data/lib/azure/service/storage_service.rb +82 -82
  56. data/lib/azure/service/storage_service_properties.rb +37 -37
  57. data/lib/azure/service_bus/action.rb +21 -21
  58. data/lib/azure/service_bus/auth/wrap_service.rb +88 -88
  59. data/lib/azure/service_bus/auth/wrap_signer.rb +68 -68
  60. data/lib/azure/service_bus/brokered_message.rb +123 -123
  61. data/lib/azure/service_bus/brokered_message_serializer.rb +159 -159
  62. data/lib/azure/service_bus/correlation_filter.rb +45 -45
  63. data/lib/azure/service_bus/empty_rule_action.rb +29 -29
  64. data/lib/azure/service_bus/false_filter.rb +38 -38
  65. data/lib/azure/service_bus/filter.rb +21 -21
  66. data/lib/azure/service_bus/interval.rb +103 -103
  67. data/lib/azure/service_bus/queue.rb +229 -229
  68. data/lib/azure/service_bus/relay.rb +87 -87
  69. data/lib/azure/service_bus/resource.rb +108 -108
  70. data/lib/azure/service_bus/rule.rb +97 -97
  71. data/lib/azure/service_bus/rule_aspect.rb +34 -34
  72. data/lib/azure/service_bus/serialization.rb +161 -161
  73. data/lib/azure/service_bus/service_bus_service.rb +896 -896
  74. data/lib/azure/service_bus/sql_filter.rb +50 -50
  75. data/lib/azure/service_bus/sql_rule_action.rb +50 -50
  76. data/lib/azure/service_bus/subscription.rb +183 -183
  77. data/lib/azure/service_bus/topic.rb +186 -186
  78. data/lib/azure/service_bus/true_filter.rb +38 -38
  79. data/lib/azure/sql_database_management/serialization.rb +111 -111
  80. data/lib/azure/sql_database_management/sql_database.rb +31 -31
  81. data/lib/azure/sql_database_management/sql_database_management_service.rb +200 -200
  82. data/lib/azure/storage_management/serialization.rb +184 -184
  83. data/lib/azure/storage_management/storage_account.rb +40 -40
  84. data/lib/azure/storage_management/storage_management_service.rb +166 -166
  85. data/lib/azure/table/auth/shared_key.rb +92 -92
  86. data/lib/azure/table/auth/shared_key_lite.rb +44 -44
  87. data/lib/azure/table/batch.rb +329 -329
  88. data/lib/azure/table/batch_response.rb +118 -118
  89. data/lib/azure/table/edmtype.rb +126 -126
  90. data/lib/azure/table/entity.rb +30 -30
  91. data/lib/azure/table/guid.rb +23 -23
  92. data/lib/azure/table/query.rb +111 -111
  93. data/lib/azure/table/serialization.rb +107 -107
  94. data/lib/azure/table/table_service.rb +559 -559
  95. data/lib/azure/version.rb +31 -31
  96. data/lib/azure/virtual_machine_image_management/serialization.rb +66 -66
  97. data/lib/azure/virtual_machine_image_management/virtual_machine_disk.rb +25 -25
  98. data/lib/azure/virtual_machine_image_management/virtual_machine_image.rb +25 -25
  99. data/lib/azure/virtual_machine_image_management/virtual_machine_image_management_service.rb +94 -94
  100. data/lib/azure/virtual_machine_management/serialization.rb +462 -462
  101. data/lib/azure/virtual_machine_management/virtual_machine.rb +45 -45
  102. data/lib/azure/virtual_machine_management/virtual_machine_management_service.rb +588 -588
  103. data/lib/azure/virtual_network_management/serialization.rb +190 -190
  104. data/lib/azure/virtual_network_management/virtual_network.rb +37 -37
  105. data/lib/azure/virtual_network_management/virtual_network_management_service.rb +109 -109
  106. data/test/fixtures/affinity_group.xml +33 -33
  107. data/test/fixtures/all_containers.xml +20 -20
  108. data/test/fixtures/all_tables.xml +22 -22
  109. data/test/fixtures/certificate.pem +21 -21
  110. data/test/fixtures/container_acl.xml +11 -11
  111. data/test/fixtures/create_sql_database_server.xml +1 -1
  112. data/test/fixtures/create_storage_desc_error.xml +5 -5
  113. data/test/fixtures/create_storage_extendedprop_error.xml +8 -8
  114. data/test/fixtures/create_storage_extendedpropname_error.xml +6 -6
  115. data/test/fixtures/create_storage_full_error.xml +6 -6
  116. data/test/fixtures/create_storage_label_error.xml +5 -5
  117. data/test/fixtures/create_storage_location_error.xml +5 -5
  118. data/test/fixtures/create_storage_name_error.xml +6 -6
  119. data/test/fixtures/create_table_response_entry.xml +15 -15
  120. data/test/fixtures/delete_storage_container_error.xml +5 -5
  121. data/test/fixtures/delete_storage_error.xml +5 -5
  122. data/test/fixtures/deployment_error.xml +5 -5
  123. data/test/fixtures/get_storage_account_error.xml +5 -5
  124. data/test/fixtures/get_storage_account_properties.xml +31 -31
  125. data/test/fixtures/get_storage_account_properties_new.xml +31 -31
  126. data/test/fixtures/http_error.xml +5 -5
  127. data/test/fixtures/insert_entity_response_entry.xml +25 -25
  128. data/test/fixtures/list_affinity_groups.xml +22 -22
  129. data/test/fixtures/list_blobs.xml +120 -120
  130. data/test/fixtures/list_block_all_with_none_committed.xml +21 -21
  131. data/test/fixtures/list_blocks_all.xml +22 -22
  132. data/test/fixtures/list_blocks_committed.xml +12 -12
  133. data/test/fixtures/list_cloud_services.xml +38 -38
  134. data/test/fixtures/list_containers.xml +37 -37
  135. data/test/fixtures/list_firewall_management_endpoint.xml +27 -27
  136. data/test/fixtures/list_images.xml +110 -110
  137. data/test/fixtures/list_locations.xml +62 -62
  138. data/test/fixtures/list_page_ranges.xml +10 -10
  139. data/test/fixtures/list_sql_database.xml +36 -36
  140. data/test/fixtures/list_sql_server_firewall.xml +23 -23
  141. data/test/fixtures/list_storage_account_single.xml +24 -24
  142. data/test/fixtures/list_storage_accounts.xml +45 -45
  143. data/test/fixtures/list_virtual_networks.xml +92 -92
  144. data/test/fixtures/logging.xml +11 -11
  145. data/test/fixtures/management_certificate.pem +55 -55
  146. data/test/fixtures/messages.xml +12 -12
  147. data/test/fixtures/metrics.xml +10 -10
  148. data/test/fixtures/privatekey.key +28 -28
  149. data/test/fixtures/query_entities_empty_response.xml +7 -7
  150. data/test/fixtures/query_entities_response.xml +45 -45
  151. data/test/fixtures/queue_service_properties.xml +22 -22
  152. data/test/fixtures/queue_service_properties_original.xml +19 -19
  153. data/test/fixtures/queues.xml +16 -16
  154. data/test/fixtures/retention_policy.xml +5 -5
  155. data/test/fixtures/sb_default_create_queue_response.xml +23 -23
  156. data/test/fixtures/sb_default_create_relay_response.xml +15 -15
  157. data/test/fixtures/sb_default_create_topic_response.xml +18 -18
  158. data/test/fixtures/sb_get_access_token_response.txt +1 -1
  159. data/test/fixtures/sb_queues_runtime_peek_message_response_headers.txt +9 -9
  160. data/test/fixtures/storage_service_properties.xml +54 -54
  161. data/test/fixtures/update_storage_account.xml +16 -16
  162. data/test/fixtures/update_storage_error.xml +4 -4
  163. data/test/fixtures/updated_storage_accounts.xml +52 -52
  164. data/test/fixtures/virtual_machine.xml +113 -113
  165. data/test/fixtures/windows_virtual_machine.xml +106 -106
  166. data/test/integration/affinity_group/Affinity_test.rb +55 -55
  167. data/test/integration/affinity_group/Create_Affinity_test.rb +63 -63
  168. data/test/integration/affinity_group/Delete_Affinity_test.rb +56 -56
  169. data/test/integration/affinity_group/List_Affinity_test.rb +41 -41
  170. data/test/integration/affinity_group/Update_Affinity_test.rb +82 -82
  171. data/test/integration/blob/blob_gb18030_test.rb +199 -199
  172. data/test/integration/blob/blob_metadata_test.rb +75 -75
  173. data/test/integration/blob/blob_pages_test.rb +119 -119
  174. data/test/integration/blob/blob_properties_test.rb +77 -77
  175. data/test/integration/blob/block_blob_test.rb +254 -254
  176. data/test/integration/blob/container/container_acl_test.rb +69 -69
  177. data/test/integration/blob/container/container_metadata_test.rb +50 -50
  178. data/test/integration/blob/container/create_container_test.rb +60 -60
  179. data/test/integration/blob/container/delete_container_test.rb +39 -39
  180. data/test/integration/blob/container/get_container_properties_test.rb +48 -48
  181. data/test/integration/blob/container/list_containers_test.rb +79 -79
  182. data/test/integration/blob/container/root_container_test.rb +53 -53
  183. data/test/integration/blob/copy_blob_test.rb +113 -113
  184. data/test/integration/blob/create_blob_snapshot_test.rb +80 -80
  185. data/test/integration/blob/create_page_blob_test.rb +83 -83
  186. data/test/integration/blob/delete_blob_test.rb +159 -159
  187. data/test/integration/blob/get_blob_test.rb +65 -65
  188. data/test/integration/blob/informative_errors_test.rb +38 -38
  189. data/test/integration/blob/lease/acquire_lease_test.rb +36 -36
  190. data/test/integration/blob/lease/break_lease_test.rb +40 -40
  191. data/test/integration/blob/lease/release_lease_test.rb +40 -40
  192. data/test/integration/blob/lease/renew_lease_test.rb +42 -42
  193. data/test/integration/blob/list_blobs_test.rb +113 -113
  194. data/test/integration/cloud_service/Cloud_Create_test.rb +44 -44
  195. data/test/integration/cloud_service/Cloud_Delete_test.rb +44 -44
  196. data/test/integration/database/create_sql_server_firewall_test.rb +86 -86
  197. data/test/integration/database/create_sql_server_test.rb +53 -53
  198. data/test/integration/database/delete_sql_server_firewall_test.rb +70 -70
  199. data/test/integration/database/delete_sql_server_test.rb +58 -58
  200. data/test/integration/database/list_sql_server_firewall_test.rb +45 -45
  201. data/test/integration/database/list_sql_servers_test.rb +44 -44
  202. data/test/integration/database/reset_password_sql_server_test.rb +55 -55
  203. data/test/integration/location/Location_List_test.rb +39 -39
  204. data/test/integration/queue/clear_messages_test.rb +42 -42
  205. data/test/integration/queue/create_message_test.rb +75 -75
  206. data/test/integration/queue/create_queue_test.rb +50 -50
  207. data/test/integration/queue/delete_message_test.rb +67 -67
  208. data/test/integration/queue/delete_queue_test.rb +45 -45
  209. data/test/integration/queue/informative_errors_test.rb +41 -41
  210. data/test/integration/queue/list_messages_encoded_test.rb +79 -79
  211. data/test/integration/queue/list_messages_test.rb +79 -79
  212. data/test/integration/queue/list_queues_test.rb +44 -44
  213. data/test/integration/queue/peek_messages_test.rb +59 -59
  214. data/test/integration/queue/queue_gb18030_test.rb +131 -131
  215. data/test/integration/queue/queue_metadata_test.rb +40 -40
  216. data/test/integration/queue/update_message_test.rb +74 -74
  217. data/test/integration/service_bus/informative_errors_test.rb +36 -36
  218. data/test/integration/service_bus/queues_scenario_test.rb +200 -200
  219. data/test/integration/service_bus/queues_test.rb +265 -265
  220. data/test/integration/service_bus/relay_test.rb +131 -131
  221. data/test/integration/service_bus/rules_test.rb +144 -144
  222. data/test/integration/service_bus/sb_queue_gb18030_test.rb +182 -182
  223. data/test/integration/service_bus/scenario_test.rb +101 -101
  224. data/test/integration/service_bus/subscriptions_test.rb +211 -211
  225. data/test/integration/service_bus/topics_scenario_test.rb +406 -406
  226. data/test/integration/service_bus/topics_test.rb +129 -129
  227. data/test/integration/storage_management/storage_management_test.rb +160 -160
  228. data/test/integration/table/create_table_test.rb +35 -35
  229. data/test/integration/table/delete_entity_batch_test.rb +106 -106
  230. data/test/integration/table/delete_entity_test.rb +93 -93
  231. data/test/integration/table/delete_table_test.rb +39 -39
  232. data/test/integration/table/get_table_test.rb +36 -36
  233. data/test/integration/table/informative_errors_test.rb +38 -38
  234. data/test/integration/table/insert_entity_batch_test.rb +99 -99
  235. data/test/integration/table/insert_entity_test.rb +87 -87
  236. data/test/integration/table/insert_or_merge_entity_batch_test.rb +158 -158
  237. data/test/integration/table/insert_or_merge_entity_test.rb +142 -142
  238. data/test/integration/table/insert_or_replace_entity_batch_test.rb +151 -151
  239. data/test/integration/table/insert_or_replace_entity_test.rb +136 -136
  240. data/test/integration/table/merge_entity_batch_test.rb +127 -127
  241. data/test/integration/table/merge_entity_test.rb +112 -112
  242. data/test/integration/table/query_entities_test.rb +194 -194
  243. data/test/integration/table/query_tables_test.rb +42 -42
  244. data/test/integration/table/query_test.rb +250 -250
  245. data/test/integration/table/table_acl_test.rb +51 -51
  246. data/test/integration/table/table_gb18030_test.rb +355 -355
  247. data/test/integration/table/update_entity_batch_test.rb +148 -148
  248. data/test/integration/table/update_entity_test.rb +130 -130
  249. data/test/integration/test_helper.rb +42 -42
  250. data/test/integration/vm/VM_Create_test.rb +260 -260
  251. data/test/integration/vm/VM_Delete_test.rb +55 -55
  252. data/test/integration/vm/VM_Operations_test.rb +173 -173
  253. data/test/integration/vm_image/virtual_machine_disk_test.rb +37 -37
  254. data/test/integration/vm_image/virtual_machine_image_test.rb +36 -36
  255. data/test/integration/vnet/Virtual_Network_Create_test.rb +122 -122
  256. data/test/integration/vnet/Virtual_Network_list_test.rb +53 -53
  257. data/test/support/env.rb +19 -19
  258. data/test/support/fixtures.rb +36 -36
  259. data/test/support/name_generator.rb +168 -168
  260. data/test/support/stubs.rb +42 -42
  261. data/test/support/virtual_machine_name_generator.rb +102 -102
  262. data/test/support/virtual_network_helper.rb +73 -73
  263. data/test/test_helper.rb +53 -53
  264. data/test/unit/affinity_group/affinity_group_test.rb +192 -192
  265. data/test/unit/affinity_group/serialization_test.rb +88 -88
  266. data/test/unit/base_management/location_test.rb +57 -57
  267. data/test/unit/blob/blob_service_test.rb +1946 -1946
  268. data/test/unit/cloud_service_management/cloud_service_management_service_test.rb +94 -94
  269. data/test/unit/cloud_service_management/serialization_test.rb +169 -169
  270. data/test/unit/core/auth/shared_key_lite_test.rb +51 -51
  271. data/test/unit/core/auth/shared_key_test.rb +58 -58
  272. data/test/unit/core/auth/signer_test.rb +30 -30
  273. data/test/unit/core/http/http_error_test.rb +57 -57
  274. data/test/unit/core/http/http_request_test.rb +66 -66
  275. data/test/unit/core/http/http_response_test.rb +45 -45
  276. data/test/unit/core/http/retry_policy_test.rb +23 -23
  277. data/test/unit/database/serialization_test.rb +97 -97
  278. data/test/unit/database/sql_database_server_service_test.rb +288 -288
  279. data/test/unit/service/serialization_test.rb +532 -532
  280. data/test/unit/service/storage_service_test.rb +292 -292
  281. data/test/unit/storage_management/serialization_test.rb +232 -232
  282. data/test/unit/storage_management/storage_management_service_test.rb +261 -261
  283. data/test/unit/table/edmtype_test.rb +107 -107
  284. data/test/unit/virtual_machine_image_management/serialization_test.rb +35 -35
  285. data/test/unit/virtual_machine_image_management/virtual_machine_image_management_service_test.rb +65 -65
  286. data/test/unit/virtual_machine_management/serialization_test.rb +258 -258
  287. data/test/unit/virtual_machine_management/virtual_machine_management_service_test.rb +440 -440
  288. data/test/unit/vnet/serialization_test.rb +187 -187
  289. data/test/unit/vnet/virtual_network_management_service_test.rb +131 -131
  290. metadata +34 -27
@@ -1,41 +1,41 @@
1
- #-------------------------------------------------------------------------
2
- # # Copyright (c) Microsoft and contributors. All rights reserved.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- #--------------------------------------------------------------------------
15
- require 'integration/test_helper'
16
-
17
- describe Azure::BaseManagementService do
18
-
19
- subject { Azure::BaseManagementService.new }
20
- let(:affinity_group_name) { AffinityGroupNameHelper.name }
21
-
22
- before do
23
- Loggerx.expects(:puts).returns(nil).at_least(0)
24
- subject.create_affinity_group(affinity_group_name,
25
- WindowsImageLocation,
26
- 'Label Name')
27
- end
28
-
29
- after { AffinityGroupNameHelper.clean }
30
-
31
- describe '#list_affinity_groups' do
32
- it 'list affinity groups' do
33
- affinity_groups = subject.list_affinity_groups
34
- affinity_group = affinity_groups.first
35
- affinity_groups.wont_be_nil
36
- affinity_groups.must_be_kind_of Array
37
- affinity_group.must_be_kind_of Azure::BaseManagement::AffinityGroup
38
- assert_operator affinity_groups.size, :>=, 1
39
- end
40
- end
41
- end
1
+ #-------------------------------------------------------------------------
2
+ # # Copyright (c) Microsoft and contributors. All rights reserved.
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #--------------------------------------------------------------------------
15
+ require 'integration/test_helper'
16
+
17
+ describe Azure::BaseManagementService do
18
+
19
+ subject { Azure::BaseManagementService.new }
20
+ let(:affinity_group_name) { AffinityGroupNameHelper.name }
21
+
22
+ before do
23
+ Loggerx.expects(:puts).returns(nil).at_least(0)
24
+ subject.create_affinity_group(affinity_group_name,
25
+ WindowsImageLocation,
26
+ 'Label Name')
27
+ end
28
+
29
+ after { AffinityGroupNameHelper.clean }
30
+
31
+ describe '#list_affinity_groups' do
32
+ it 'list affinity groups' do
33
+ affinity_groups = subject.list_affinity_groups
34
+ affinity_group = affinity_groups.first
35
+ affinity_groups.wont_be_nil
36
+ affinity_groups.must_be_kind_of Array
37
+ affinity_group.must_be_kind_of Azure::BaseManagement::AffinityGroup
38
+ assert_operator affinity_groups.size, :>=, 1
39
+ end
40
+ end
41
+ end
@@ -1,82 +1,82 @@
1
- #-------------------------------------------------------------------------
2
- # Copyright 2013 Microsoft Open Technologies, Inc.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- #--------------------------------------------------------------------------
15
- require 'integration/test_helper'
16
-
17
- describe Azure::BaseManagementService do
18
- AffinityGroupName = random_string('affinity-group-', 10)
19
- Azure::BaseManagementService.new.create_affinity_group(
20
- AffinityGroupName,
21
- WindowsImageLocation,
22
- 'Label'
23
- )
24
-
25
- before do
26
- Loggerx.expects(:puts).returns(nil).at_least(0)
27
- end
28
-
29
- subject { Azure::BaseManagementService.new }
30
- let(:affinity_group_name) { AffinityGroupName }
31
- let(:location) { 'Central US' }
32
-
33
- describe '#update_affinity_group' do
34
- let(:options) { { description: 'sample description' } }
35
-
36
- it 'update affinity group' do
37
- label = 'updated label'
38
- subject.update_affinity_group(affinity_group_name, label)
39
- affinity_group = subject.get_affinity_group(affinity_group_name)
40
- affinity_group.wont_be_nil
41
- affinity_group.label.must_equal label
42
- end
43
-
44
- it "update affinity group's description with valid input" do
45
- label = 'Updated Label'
46
- subject.update_affinity_group(affinity_group_name, label, options)
47
- affinity_group = subject.get_affinity_group(affinity_group_name)
48
- affinity_group.wont_be_nil
49
- affinity_group.description.must_equal options[:description]
50
- affinity_group.label.must_equal label
51
- end
52
-
53
- it "should update only affinity group's label" do
54
- label = 'Updated Label'
55
- affinity_group1 = subject.get_affinity_group(affinity_group_name)
56
- subject.update_affinity_group(affinity_group_name, label)
57
- affinity_group = subject.get_affinity_group(affinity_group_name)
58
- affinity_group.wont_be_nil
59
- affinity_group.description.must_equal affinity_group1.description
60
- affinity_group.label.must_equal label
61
- end
62
-
63
- it 'error if description content exceeds allowed limit of 1024 chars' do
64
- options = { description: 'a' * 1025 }
65
- exception = assert_raises(RuntimeError) do
66
- subject.update_affinity_group(affinity_group_name,
67
- 'this is update operation',
68
- options)
69
- end
70
- assert_match(/The description for the affinity group is invalid./i,
71
- exception.message)
72
- end
73
-
74
- it 'error in case of updating non existing affinity group' do
75
- affinity_name = 'unkown-affinity-group'
76
- exception = assert_raises(Azure::Error::Error) do
77
- subject.update_affinity_group(affinity_name, 'updated label', options)
78
- end
79
- assert_match(/The affinity group does not exist./i, exception.message)
80
- end
81
- end
82
- end
1
+ #-------------------------------------------------------------------------
2
+ # Copyright 2013 Microsoft Open Technologies, Inc.
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #--------------------------------------------------------------------------
15
+ require 'integration/test_helper'
16
+
17
+ describe Azure::BaseManagementService do
18
+ AffinityGroupName = random_string('affinity-group-', 10)
19
+ Azure::BaseManagementService.new.create_affinity_group(
20
+ AffinityGroupName,
21
+ WindowsImageLocation,
22
+ 'Label'
23
+ )
24
+
25
+ before do
26
+ Loggerx.expects(:puts).returns(nil).at_least(0)
27
+ end
28
+
29
+ subject { Azure::BaseManagementService.new }
30
+ let(:affinity_group_name) { AffinityGroupName }
31
+ let(:location) { 'Central US' }
32
+
33
+ describe '#update_affinity_group' do
34
+ let(:options) { { description: 'sample description' } }
35
+
36
+ it 'update affinity group' do
37
+ label = 'updated label'
38
+ subject.update_affinity_group(affinity_group_name, label)
39
+ affinity_group = subject.get_affinity_group(affinity_group_name)
40
+ affinity_group.wont_be_nil
41
+ affinity_group.label.must_equal label
42
+ end
43
+
44
+ it "update affinity group's description with valid input" do
45
+ label = 'Updated Label'
46
+ subject.update_affinity_group(affinity_group_name, label, options)
47
+ affinity_group = subject.get_affinity_group(affinity_group_name)
48
+ affinity_group.wont_be_nil
49
+ affinity_group.description.must_equal options[:description]
50
+ affinity_group.label.must_equal label
51
+ end
52
+
53
+ it "should update only affinity group's label" do
54
+ label = 'Updated Label'
55
+ affinity_group1 = subject.get_affinity_group(affinity_group_name)
56
+ subject.update_affinity_group(affinity_group_name, label)
57
+ affinity_group = subject.get_affinity_group(affinity_group_name)
58
+ affinity_group.wont_be_nil
59
+ affinity_group.description.must_equal affinity_group1.description
60
+ affinity_group.label.must_equal label
61
+ end
62
+
63
+ it 'error if description content exceeds allowed limit of 1024 chars' do
64
+ options = { description: 'a' * 1025 }
65
+ exception = assert_raises(RuntimeError) do
66
+ subject.update_affinity_group(affinity_group_name,
67
+ 'this is update operation',
68
+ options)
69
+ end
70
+ assert_match(/The description for the affinity group is invalid./i,
71
+ exception.message)
72
+ end
73
+
74
+ it 'error in case of updating non existing affinity group' do
75
+ affinity_name = 'unkown-affinity-group'
76
+ exception = assert_raises(Azure::Error::Error) do
77
+ subject.update_affinity_group(affinity_name, 'updated label', options)
78
+ end
79
+ assert_match(/The affinity group does not exist./i, exception.message)
80
+ end
81
+ end
82
+ end
@@ -1,199 +1,199 @@
1
- #-------------------------------------------------------------------------
2
- # # Copyright (c) Microsoft and contributors. All rights reserved.
3
- #
4
- # Licensed under the Apache License, Version 2.0 (the "License");
5
- # you may not use this file except in compliance with the License.
6
- # You may obtain a copy of the License at
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
- #--------------------------------------------------------------------------
15
- require "integration/test_helper"
16
- require "azure/blob/blob_service"
17
-
18
- describe 'Blob GB-18030' do
19
- subject { Azure::Blob::BlobService.new }
20
- after { ContainerNameHelper.clean }
21
-
22
- let(:container_name) { ContainerNameHelper.name }
23
- let(:blob_name) { "blobname" }
24
- let(:length) { 1024 }
25
-
26
- before {
27
- subject.create_container container_name
28
- subject.create_page_blob container_name, blob_name, length
29
- }
30
-
31
- it 'Read/Write Blob Container Name UTF-8' do
32
- # Expected results: Failure, because the Blob
33
- # container name can only contain ASCII
34
- # characters, per the Blob Service spec.
35
- GB18030TestStrings.get.each { |k,v|
36
- begin
37
- subject.create_container container_name + v.encode("UTF-8")
38
- flunk "No exception"
39
- rescue
40
- # Add validation?
41
- end
42
- }
43
- end
44
-
45
- it 'Read/Write Blob Container Name GB-18030' do
46
- # Expected results: Failure, because the Blob
47
- # container name can only contain ASCII
48
- # characters, per the Blob Service spec.
49
- GB18030TestStrings.get.each { |k,v|
50
- begin
51
- subject.create_container container_name + v.encode("GB18030")
52
- flunk "No exception"
53
- rescue
54
- # Add validation?
55
- end
56
- }
57
- end
58
-
59
- it 'Read/Write Blob Name UTF-8' do
60
- container_name = ContainerNameHelper.name
61
- subject.create_container container_name
62
- GB18030TestStrings.get.each { |k,v|
63
- # The Blob service does not support characters from extended plains.
64
- if k != 'ChineseExtB' then
65
- test_name = container_name + v.encode("UTF-8")
66
- subject.create_block_blob container_name, test_name, "hi"
67
- blobs = subject.list_blobs container_name
68
- blobs.each { |value|
69
- value.name.must_equal test_name
70
- }
71
- subject.delete_blob container_name, test_name
72
- end
73
- }
74
- end
75
-
76
- # Fails because of https://github.com/appfog/azure-sdk-for-ruby/issues/293
77
- it 'Read/Write Blob Name GB18030' do
78
- container_name = ContainerNameHelper.name
79
- subject.create_container container_name
80
- GB18030TestStrings.get.each { |k,v|
81
- # The Blob service does not support characters from extended plains.
82
- if k != 'ChineseExtB' then
83
- test_name = container_name + v.encode("GB18030")
84
- subject.create_block_blob container_name, test_name, "hi"
85
- blobs = subject.list_blobs container_name
86
- blobs.each { |value|
87
- value.name.encode("UTF-8").must_equal test_name.encode("UTF-8")
88
- }
89
- subject.delete_blob container_name, test_name
90
- end
91
- }
92
- end
93
-
94
- it 'Read/Write Blob Metadata UTF-8 key' do
95
- GB18030TestStrings.get.each { |k,v|
96
- begin
97
- metadata = {"custommetadata" + v.encode("UTF-8") => "CustomMetadataValue" }
98
- subject.set_blob_metadata container_name, blob_name, metadata
99
- flunk "No exception"
100
- rescue Azure::Core::Http::HTTPError => error
101
- error.status_code.must_equal 400
102
- end
103
- }
104
- end
105
-
106
- it 'Read/Write Blob Metadata GB-18030 key' do
107
- GB18030TestStrings.get.each { |k,v|
108
- begin
109
- metadata = {"custommetadata" + v.encode("GB18030") => "CustomMetadataValue" }
110
- subject.set_blob_metadata container_name, blob_name, metadata
111
- flunk "No exception"
112
- rescue Azure::Core::Http::HTTPError => error
113
- error.status_code.must_equal 400
114
- end
115
- }
116
- end
117
-
118
- it 'Read/Write Blob Metadata UTF-8 value' do
119
- GB18030TestStrings.get.each { |k,v|
120
- begin
121
- metadata = {"custommetadata" => "CustomMetadataValue" + v.encode("UTF-8")}
122
- subject.set_blob_metadata container_name, blob_name, metadata
123
- flunk "No exception"
124
- rescue Azure::Core::Http::HTTPError => error
125
- # TODO: Error should really be 400
126
- error.status_code.must_equal 403
127
- end
128
- }
129
- end
130
-
131
- it 'Read/Write Blob Metadata GB-18030 value' do
132
- GB18030TestStrings.get.each { |k,v|
133
- begin
134
- metadata = {"custommetadata" => "CustomMetadataValue" + v.encode("GB18030")}
135
- subject.set_blob_metadata container_name, blob_name, metadata
136
- flunk "No exception"
137
- rescue Azure::Core::Http::HTTPError => error
138
- # TODO: Error should really be 400
139
- error.status_code.must_equal 403
140
- end
141
- }
142
- end
143
-
144
- it 'Read/Write Blob Block Content UTF-8' do
145
- GB18030TestStrings.get.each { |k,v|
146
- blob_name = 'Read/Write Block Blob Content UTF-8 for ' + k
147
- content = v.encode("UTF-8")
148
-
149
- subject.create_block_blob container_name, blob_name, content
150
- blob, returned_content = subject.get_blob container_name, blob_name
151
-
152
- returned_content.must_equal content
153
- }
154
- end
155
-
156
- it 'Read/Write Blob Block Content GB18030' do
157
- GB18030TestStrings.get.each { |k,v|
158
- blob_name = 'Read/Write Block Blob Content GB18030 for ' + k
159
- content = v.encode("GB18030")
160
- options = { :content_encoding=>"GB18030" }
161
- subject.create_block_blob container_name, blob_name, content, options
162
- blob, returned_content = subject.get_blob container_name, blob_name
163
- returned_content.force_encoding(blob.properties[:content_encoding])
164
- returned_content.must_equal content
165
- }
166
- end
167
-
168
- it 'Read/Write Blob Page Content UTF-8' do
169
- GB18030TestStrings.get.each { |k,v|
170
- blob_name = 'Read/Write Page Blob Content UTF-8 for ' + k
171
- options = { :content_encoding=>"UTF-8" }
172
- content = v.encode("UTF-8")
173
- while content.bytesize < 512 do
174
- content << "X"
175
- end
176
- subject.create_page_blob container_name, blob_name, 512, options
177
- subject.create_blob_pages container_name, blob_name, 0, 511, content
178
- blob, returned_content = subject.get_blob container_name, blob_name
179
- returned_content.force_encoding(blob.properties[:content_encoding])
180
- returned_content.must_equal content
181
- }
182
- end
183
-
184
- it 'Read/Write Blob Page Content GB18030' do
185
- GB18030TestStrings.get.each { |k,v|
186
- blob_name = 'Read/Write Page Blob Content GB18030 for ' + k
187
- options = { :content_encoding=>"GB18030" }
188
- content = v.encode("GB18030")
189
- while content.bytesize < 512 do
190
- content << "X"
191
- end
192
- subject.create_page_blob container_name, blob_name, 512, options
193
- subject.create_blob_pages container_name, blob_name, 0, 511, content
194
- blob, returned_content = subject.get_blob container_name, blob_name
195
- returned_content.force_encoding(blob.properties[:content_encoding])
196
- returned_content.must_equal content
197
- }
198
- end
199
- end
1
+ #-------------------------------------------------------------------------
2
+ # # Copyright (c) Microsoft and contributors. All rights reserved.
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+ #--------------------------------------------------------------------------
15
+ require "integration/test_helper"
16
+ require "azure/blob/blob_service"
17
+
18
+ describe 'Blob GB-18030' do
19
+ subject { Azure::Blob::BlobService.new }
20
+ after { ContainerNameHelper.clean }
21
+
22
+ let(:container_name) { ContainerNameHelper.name }
23
+ let(:blob_name) { "blobname" }
24
+ let(:length) { 1024 }
25
+
26
+ before {
27
+ subject.create_container container_name
28
+ subject.create_page_blob container_name, blob_name, length
29
+ }
30
+
31
+ it 'Read/Write Blob Container Name UTF-8' do
32
+ # Expected results: Failure, because the Blob
33
+ # container name can only contain ASCII
34
+ # characters, per the Blob Service spec.
35
+ GB18030TestStrings.get.each { |k,v|
36
+ begin
37
+ subject.create_container container_name + v.encode("UTF-8")
38
+ flunk "No exception"
39
+ rescue
40
+ # Add validation?
41
+ end
42
+ }
43
+ end
44
+
45
+ it 'Read/Write Blob Container Name GB-18030' do
46
+ # Expected results: Failure, because the Blob
47
+ # container name can only contain ASCII
48
+ # characters, per the Blob Service spec.
49
+ GB18030TestStrings.get.each { |k,v|
50
+ begin
51
+ subject.create_container container_name + v.encode("GB18030")
52
+ flunk "No exception"
53
+ rescue
54
+ # Add validation?
55
+ end
56
+ }
57
+ end
58
+
59
+ it 'Read/Write Blob Name UTF-8' do
60
+ container_name = ContainerNameHelper.name
61
+ subject.create_container container_name
62
+ GB18030TestStrings.get.each { |k,v|
63
+ # The Blob service does not support characters from extended plains.
64
+ if k != 'ChineseExtB' then
65
+ test_name = container_name + v.encode("UTF-8")
66
+ subject.create_block_blob container_name, test_name, "hi"
67
+ blobs = subject.list_blobs container_name
68
+ blobs.each { |value|
69
+ value.name.must_equal test_name
70
+ }
71
+ subject.delete_blob container_name, test_name
72
+ end
73
+ }
74
+ end
75
+
76
+ # Fails because of https://github.com/appfog/azure-sdk-for-ruby/issues/293
77
+ it 'Read/Write Blob Name GB18030' do
78
+ container_name = ContainerNameHelper.name
79
+ subject.create_container container_name
80
+ GB18030TestStrings.get.each { |k,v|
81
+ # The Blob service does not support characters from extended plains.
82
+ if k != 'ChineseExtB' then
83
+ test_name = container_name + v.encode("GB18030")
84
+ subject.create_block_blob container_name, test_name, "hi"
85
+ blobs = subject.list_blobs container_name
86
+ blobs.each { |value|
87
+ value.name.encode("UTF-8").must_equal test_name.encode("UTF-8")
88
+ }
89
+ subject.delete_blob container_name, test_name
90
+ end
91
+ }
92
+ end
93
+
94
+ it 'Read/Write Blob Metadata UTF-8 key' do
95
+ GB18030TestStrings.get.each { |k,v|
96
+ begin
97
+ metadata = {"custommetadata" + v.encode("UTF-8") => "CustomMetadataValue" }
98
+ subject.set_blob_metadata container_name, blob_name, metadata
99
+ flunk "No exception"
100
+ rescue Azure::Core::Http::HTTPError => error
101
+ error.status_code.must_equal 400
102
+ end
103
+ }
104
+ end
105
+
106
+ it 'Read/Write Blob Metadata GB-18030 key' do
107
+ GB18030TestStrings.get.each { |k,v|
108
+ begin
109
+ metadata = {"custommetadata" + v.encode("GB18030") => "CustomMetadataValue" }
110
+ subject.set_blob_metadata container_name, blob_name, metadata
111
+ flunk "No exception"
112
+ rescue Azure::Core::Http::HTTPError => error
113
+ error.status_code.must_equal 400
114
+ end
115
+ }
116
+ end
117
+
118
+ it 'Read/Write Blob Metadata UTF-8 value' do
119
+ GB18030TestStrings.get.each { |k,v|
120
+ begin
121
+ metadata = {"custommetadata" => "CustomMetadataValue" + v.encode("UTF-8")}
122
+ subject.set_blob_metadata container_name, blob_name, metadata
123
+ flunk "No exception"
124
+ rescue Azure::Core::Http::HTTPError => error
125
+ # TODO: Error should really be 400
126
+ error.status_code.must_equal 403
127
+ end
128
+ }
129
+ end
130
+
131
+ it 'Read/Write Blob Metadata GB-18030 value' do
132
+ GB18030TestStrings.get.each { |k,v|
133
+ begin
134
+ metadata = {"custommetadata" => "CustomMetadataValue" + v.encode("GB18030")}
135
+ subject.set_blob_metadata container_name, blob_name, metadata
136
+ flunk "No exception"
137
+ rescue Azure::Core::Http::HTTPError => error
138
+ # TODO: Error should really be 400
139
+ error.status_code.must_equal 403
140
+ end
141
+ }
142
+ end
143
+
144
+ it 'Read/Write Blob Block Content UTF-8' do
145
+ GB18030TestStrings.get.each { |k,v|
146
+ blob_name = 'Read/Write Block Blob Content UTF-8 for ' + k
147
+ content = v.encode("UTF-8")
148
+
149
+ subject.create_block_blob container_name, blob_name, content
150
+ blob, returned_content = subject.get_blob container_name, blob_name
151
+
152
+ returned_content.must_equal content
153
+ }
154
+ end
155
+
156
+ it 'Read/Write Blob Block Content GB18030' do
157
+ GB18030TestStrings.get.each { |k,v|
158
+ blob_name = 'Read/Write Block Blob Content GB18030 for ' + k
159
+ content = v.encode("GB18030")
160
+ options = { :content_encoding=>"GB18030" }
161
+ subject.create_block_blob container_name, blob_name, content, options
162
+ blob, returned_content = subject.get_blob container_name, blob_name
163
+ returned_content.force_encoding(blob.properties[:content_encoding])
164
+ returned_content.must_equal content
165
+ }
166
+ end
167
+
168
+ it 'Read/Write Blob Page Content UTF-8' do
169
+ GB18030TestStrings.get.each { |k,v|
170
+ blob_name = 'Read/Write Page Blob Content UTF-8 for ' + k
171
+ options = { :content_encoding=>"UTF-8" }
172
+ content = v.encode("UTF-8")
173
+ while content.bytesize < 512 do
174
+ content << "X"
175
+ end
176
+ subject.create_page_blob container_name, blob_name, 512, options
177
+ subject.create_blob_pages container_name, blob_name, 0, 511, content
178
+ blob, returned_content = subject.get_blob container_name, blob_name
179
+ returned_content.force_encoding(blob.properties[:content_encoding])
180
+ returned_content.must_equal content
181
+ }
182
+ end
183
+
184
+ it 'Read/Write Blob Page Content GB18030' do
185
+ GB18030TestStrings.get.each { |k,v|
186
+ blob_name = 'Read/Write Page Blob Content GB18030 for ' + k
187
+ options = { :content_encoding=>"GB18030" }
188
+ content = v.encode("GB18030")
189
+ while content.bytesize < 512 do
190
+ content << "X"
191
+ end
192
+ subject.create_page_blob container_name, blob_name, 512, options
193
+ subject.create_blob_pages container_name, blob_name, 0, 511, content
194
+ blob, returned_content = subject.get_blob container_name, blob_name
195
+ returned_content.force_encoding(blob.properties[:content_encoding])
196
+ returned_content.must_equal content
197
+ }
198
+ end
199
+ end