azure 0.1.1 → 0.5.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.
Files changed (341) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +6 -0
  3. data/ChangeLog.txt +5 -0
  4. data/Gemfile +16 -3
  5. data/README.md +344 -2
  6. data/Rakefile +66 -37
  7. data/azure.gemspec +30 -11
  8. data/lib/azure.rb +35 -4
  9. data/lib/azure/blob/blob.rb +32 -0
  10. data/lib/azure/blob/blob_service.rb +1423 -0
  11. data/lib/azure/blob/block.rb +31 -0
  12. data/lib/azure/blob/container.rb +32 -0
  13. data/lib/azure/blob/serialization.rb +285 -0
  14. data/lib/azure/core.rb +32 -0
  15. data/lib/azure/core/auth/authorizer.rb +36 -0
  16. data/lib/azure/core/auth/shared_key.rb +21 -6
  17. data/lib/azure/core/auth/shared_key_lite.rb +17 -3
  18. data/lib/azure/core/auth/signer.rb +48 -0
  19. data/lib/azure/core/configuration.rb +152 -0
  20. data/lib/azure/core/error.rb +22 -0
  21. data/lib/azure/core/filtered_service.rb +44 -0
  22. data/lib/azure/core/http/debug_filter.rb +36 -0
  23. data/lib/azure/core/http/http_error.rb +84 -0
  24. data/lib/azure/core/http/http_filter.rb +53 -0
  25. data/lib/azure/core/http/http_request.rb +157 -0
  26. data/lib/azure/core/http/http_response.rb +133 -0
  27. data/lib/azure/core/http/retry_policy.rb +68 -0
  28. data/lib/azure/core/http/signer_filter.rb +34 -0
  29. data/lib/azure/core/service.rb +38 -32
  30. data/lib/azure/core/signed_service.rb +43 -0
  31. data/lib/azure/queue/message.rb +30 -0
  32. data/lib/azure/queue/queue.rb +29 -0
  33. data/lib/azure/queue/queue_service.rb +568 -0
  34. data/lib/azure/queue/serialization.rb +103 -0
  35. data/lib/azure/service/access_policy.rb +26 -0
  36. data/lib/azure/service/enumeration_results.rb +21 -0
  37. data/lib/azure/service/logging.rb +32 -0
  38. data/lib/azure/service/metrics.rb +31 -0
  39. data/lib/azure/service/retention_policy.rb +25 -0
  40. data/lib/azure/service/serialization.rb +240 -0
  41. data/lib/azure/service/signed_identifier.rb +30 -0
  42. data/lib/azure/service/storage_service.rb +79 -0
  43. data/lib/azure/service/storage_service_properties.rb +32 -0
  44. data/lib/azure/service_bus/action.rb +21 -0
  45. data/lib/azure/service_bus/auth/wrap_service.rb +59 -46
  46. data/lib/azure/service_bus/auth/wrap_signer.rb +69 -0
  47. data/lib/azure/service_bus/brokered_message.rb +36 -51
  48. data/lib/azure/service_bus/brokered_message_serializer.rb +48 -34
  49. data/lib/azure/service_bus/correlation_filter.rb +45 -0
  50. data/lib/azure/service_bus/empty_rule_action.rb +30 -0
  51. data/lib/azure/service_bus/false_filter.rb +38 -0
  52. data/lib/azure/service_bus/filter.rb +21 -0
  53. data/lib/azure/{core/utils → service_bus}/interval.rb +29 -22
  54. data/lib/azure/service_bus/queue.rb +230 -0
  55. data/lib/azure/service_bus/resource.rb +109 -0
  56. data/lib/azure/service_bus/rule.rb +98 -0
  57. data/lib/azure/service_bus/rule_aspect.rb +34 -0
  58. data/lib/azure/service_bus/serialization.rb +160 -0
  59. data/lib/azure/service_bus/service_bus_service.rb +819 -12
  60. data/lib/azure/service_bus/sql_filter.rb +50 -0
  61. data/lib/azure/service_bus/sql_rule_action.rb +50 -0
  62. data/lib/azure/service_bus/subscription.rb +184 -0
  63. data/lib/azure/service_bus/topic.rb +187 -0
  64. data/lib/azure/service_bus/true_filter.rb +38 -0
  65. data/lib/azure/{tables → table}/auth/shared_key.rb +33 -12
  66. data/lib/azure/table/auth/shared_key_lite.rb +44 -0
  67. data/lib/azure/table/batch.rb +330 -0
  68. data/lib/azure/table/batch_response.rb +117 -0
  69. data/lib/azure/table/edmtype.rb +127 -0
  70. data/lib/azure/table/entity.rb +31 -0
  71. data/lib/azure/table/guid.rb +24 -0
  72. data/lib/azure/table/query.rb +112 -0
  73. data/lib/azure/table/serialization.rb +105 -0
  74. data/lib/azure/table/table_service.rb +557 -0
  75. data/lib/azure/version.rb +31 -0
  76. data/test/fixtures/container_acl.xml +11 -0
  77. data/test/fixtures/{error.xml → http_error.xml} +0 -0
  78. data/test/fixtures/list_blobs.xml +121 -0
  79. data/test/fixtures/list_block_all_with_none_committed.xml +22 -0
  80. data/test/fixtures/list_blocks_all.xml +23 -0
  81. data/test/fixtures/list_blocks_committed.xml +13 -0
  82. data/test/fixtures/list_containers.xml +38 -0
  83. data/test/fixtures/list_page_ranges.xml +11 -0
  84. data/test/fixtures/logging.xml +11 -0
  85. data/test/fixtures/metrics.xml +10 -0
  86. data/test/fixtures/queues.xml +1 -1
  87. data/test/fixtures/retention_policy.xml +5 -0
  88. data/test/fixtures/storage_service_properties.xml +23 -0
  89. data/test/integration/blob/blob_metadata_test.rb +75 -0
  90. data/test/integration/blob/blob_pages_test.rb +119 -0
  91. data/test/integration/blob/blob_properties_test.rb +77 -0
  92. data/test/integration/blob/block_blob_test.rb +254 -0
  93. data/test/integration/blob/container/container_acl_test.rb +69 -0
  94. data/test/integration/blob/container/container_metadata_test.rb +50 -0
  95. data/test/integration/blob/container/create_container_test.rb +60 -0
  96. data/test/integration/blob/container/delete_container_test.rb +39 -0
  97. data/test/integration/blob/container/get_container_properties_test.rb +48 -0
  98. data/test/integration/blob/container/list_containers_test.rb +79 -0
  99. data/test/integration/blob/container/root_container_test.rb +50 -0
  100. data/test/integration/blob/copy_blob_test.rb +113 -0
  101. data/test/integration/blob/create_blob_snapshot_test.rb +80 -0
  102. data/test/integration/blob/create_page_blob_test.rb +83 -0
  103. data/test/integration/blob/delete_blob_test.rb +159 -0
  104. data/test/integration/blob/get_blob_test.rb +65 -0
  105. data/test/integration/blob/informative_errors_test.rb +39 -0
  106. data/test/integration/blob/lease/acquire_lease_test.rb +36 -0
  107. data/test/integration/blob/lease/break_lease_test.rb +40 -0
  108. data/test/integration/blob/lease/release_lease_test.rb +40 -0
  109. data/test/integration/blob/lease/renew_lease_test.rb +42 -0
  110. data/test/integration/blob/list_blobs_test.rb +113 -0
  111. data/test/integration/queue/clear_messages_test.rb +42 -0
  112. data/test/integration/queue/create_message_test.rb +75 -0
  113. data/test/integration/queue/create_queue_test.rb +50 -0
  114. data/test/integration/queue/delete_message_test.rb +67 -0
  115. data/test/integration/queue/delete_queue_test.rb +45 -0
  116. data/test/integration/queue/informative_errors_test.rb +42 -0
  117. data/test/integration/queue/list_messages_encoded_test.rb +79 -0
  118. data/test/integration/queue/list_messages_test.rb +79 -0
  119. data/test/integration/queue/list_queues_test.rb +44 -0
  120. data/test/integration/queue/peek_messages_test.rb +59 -0
  121. data/test/integration/queue/queue_metadata_test.rb +40 -0
  122. data/test/integration/queue/update_message_test.rb +74 -0
  123. data/test/integration/service_bus/informative_errors_test.rb +37 -0
  124. data/test/integration/service_bus/queues_scenario_test.rb +200 -0
  125. data/test/integration/service_bus/queues_test.rb +266 -0
  126. data/test/integration/service_bus/rules_test.rb +145 -0
  127. data/test/integration/service_bus/scenario_test.rb +102 -0
  128. data/test/integration/service_bus/subscriptions_test.rb +211 -0
  129. data/test/integration/service_bus/topics_scenario_test.rb +406 -0
  130. data/test/integration/service_bus/topics_test.rb +129 -0
  131. data/test/integration/table/create_table_test.rb +36 -0
  132. data/test/integration/table/delete_entity_batch_test.rb +107 -0
  133. data/test/integration/table/delete_entity_test.rb +94 -0
  134. data/test/integration/table/delete_table_test.rb +40 -0
  135. data/test/integration/table/get_table_test.rb +37 -0
  136. data/test/integration/table/informative_errors_test.rb +39 -0
  137. data/test/integration/table/insert_entity_batch_test.rb +100 -0
  138. data/test/integration/table/insert_entity_test.rb +88 -0
  139. data/test/integration/table/insert_or_merge_entity_batch_test.rb +159 -0
  140. data/test/integration/table/insert_or_merge_entity_test.rb +143 -0
  141. data/test/integration/table/insert_or_replace_entity_batch_test.rb +152 -0
  142. data/test/integration/table/insert_or_replace_entity_test.rb +137 -0
  143. data/test/integration/table/merge_entity_batch_test.rb +128 -0
  144. data/test/integration/table/merge_entity_test.rb +113 -0
  145. data/test/integration/table/query_entities_test.rb +195 -0
  146. data/test/integration/table/query_tables_test.rb +43 -0
  147. data/test/integration/table/query_test.rb +251 -0
  148. data/test/integration/table/table_acl_test.rb +52 -0
  149. data/test/integration/table/update_entity_batch_test.rb +149 -0
  150. data/test/integration/table/update_entity_test.rb +131 -0
  151. data/test/integration/test_helper.rb +23 -9
  152. data/test/support/env.rb +15 -1
  153. data/test/support/fixtures.rb +14 -0
  154. data/test/support/name_generator.rb +74 -0
  155. data/test/support/stubs.rb +14 -0
  156. data/test/test_helper.rb +43 -3
  157. data/test/unit/blob/blob_service_test.rb +1947 -0
  158. data/test/unit/core/auth/shared_key_lite_test.rb +51 -0
  159. data/test/unit/core/auth/shared_key_test.rb +58 -0
  160. data/test/unit/core/auth/signer_test.rb +30 -0
  161. data/test/unit/core/http/http_error_test.rb +57 -0
  162. data/test/unit/core/http/http_request_test.rb +66 -0
  163. data/test/unit/core/http/http_response_test.rb +45 -0
  164. data/test/unit/service/serialization_test.rb +502 -0
  165. data/test/unit/service/storage_service_test.rb +291 -0
  166. data/test/unit/table/edmtype_test.rb +108 -0
  167. metadata +231 -230
  168. data/Gemfile.lock +0 -36
  169. data/lib/azure/atom.rb +0 -170
  170. data/lib/azure/auth.rb +0 -29
  171. data/lib/azure/blobs.rb +0 -620
  172. data/lib/azure/blobs/blob.rb +0 -360
  173. data/lib/azure/blobs/container.rb +0 -209
  174. data/lib/azure/blobs/service.rb +0 -396
  175. data/lib/azure/blobs/shared_access_signature.rb +0 -84
  176. data/lib/azure/blobs/uri.rb +0 -60
  177. data/lib/azure/configuration.rb +0 -121
  178. data/lib/azure/core/collection.rb +0 -118
  179. data/lib/azure/core/signer.rb +0 -32
  180. data/lib/azure/core/utils/queryable.rb +0 -74
  181. data/lib/azure/core/utils/storage_service_properties.rb +0 -83
  182. data/lib/azure/core/utils/string.rb +0 -59
  183. data/lib/azure/error.rb +0 -72
  184. data/lib/azure/queues.rb +0 -272
  185. data/lib/azure/queues/message.rb +0 -174
  186. data/lib/azure/queues/queue.rb +0 -187
  187. data/lib/azure/queues/service.rb +0 -263
  188. data/lib/azure/queues/service_properties.rb +0 -152
  189. data/lib/azure/queues/uri.rb +0 -78
  190. data/lib/azure/request.rb +0 -102
  191. data/lib/azure/response.rb +0 -93
  192. data/lib/azure/service_bus.rb +0 -4
  193. data/lib/azure/service_bus/auth/authorizer.rb +0 -22
  194. data/lib/azure/service_bus/auth/uri.rb +0 -52
  195. data/lib/azure/service_bus/auth/wrap.rb +0 -37
  196. data/lib/azure/service_bus/auth/wrap_token.rb +0 -45
  197. data/lib/azure/service_bus/auth/wrap_token_manager.rb +0 -46
  198. data/lib/azure/service_bus/queues.rb +0 -194
  199. data/lib/azure/service_bus/queues/queue.rb +0 -100
  200. data/lib/azure/service_bus/queues/queue_serializer.rb +0 -51
  201. data/lib/azure/service_bus/queues/service.rb +0 -154
  202. data/lib/azure/service_bus/queues/uri.rb +0 -80
  203. data/lib/azure/service_bus/rules.rb +0 -110
  204. data/lib/azure/service_bus/rules/rule.rb +0 -97
  205. data/lib/azure/service_bus/rules/service.rb +0 -122
  206. data/lib/azure/service_bus/rules/uri.rb +0 -39
  207. data/lib/azure/service_bus/subscriptions.rb +0 -170
  208. data/lib/azure/service_bus/subscriptions/service.rb +0 -133
  209. data/lib/azure/service_bus/subscriptions/subscription.rb +0 -164
  210. data/lib/azure/service_bus/subscriptions/subscription_serializer.rb +0 -74
  211. data/lib/azure/service_bus/subscriptions/uri.rb +0 -71
  212. data/lib/azure/service_bus/topics.rb +0 -120
  213. data/lib/azure/service_bus/topics/service.rb +0 -98
  214. data/lib/azure/service_bus/topics/topic.rb +0 -122
  215. data/lib/azure/service_bus/topics/topic_serializer.rb +0 -44
  216. data/lib/azure/service_bus/topics/uri.rb +0 -58
  217. data/lib/azure/service_runtime/client/goal_state_pipe_monitor.rb +0 -21
  218. data/lib/azure/service_runtime/client/goal_state_protocol.rb +0 -18
  219. data/lib/azure/service_runtime/client/runtime_client.rb +0 -135
  220. data/lib/azure/service_runtime/deployment.rb +0 -24
  221. data/lib/azure/service_runtime/local_resource.rb +0 -15
  222. data/lib/azure/service_runtime/role.rb +0 -17
  223. data/lib/azure/service_runtime/role_environment.rb +0 -206
  224. data/lib/azure/service_runtime/role_environment_change.rb +0 -32
  225. data/lib/azure/service_runtime/role_instance.rb +0 -35
  226. data/lib/azure/service_runtime/role_instance_endpoint.rb +0 -14
  227. data/lib/azure/tables.rb +0 -215
  228. data/lib/azure/tables/auth/shared_key_lite.rb +0 -30
  229. data/lib/azure/tables/entities_collection.rb +0 -66
  230. data/lib/azure/tables/entity.rb +0 -127
  231. data/lib/azure/tables/service.rb +0 -211
  232. data/lib/azure/tables/table.rb +0 -129
  233. data/lib/azure/tables/tables_collection.rb +0 -62
  234. data/lib/azure/tables/types.rb +0 -65
  235. data/lib/azure/tables/uri.rb +0 -62
  236. data/test/integration/blobs/auth_test.rb +0 -19
  237. data/test/integration/blobs/blob_test.rb +0 -61
  238. data/test/integration/blobs/clear_page_range_test.rb +0 -19
  239. data/test/integration/blobs/copy_test.rb +0 -33
  240. data/test/integration/blobs/create_blobs_test.rb +0 -51
  241. data/test/integration/blobs/create_container_test.rb +0 -13
  242. data/test/integration/blobs/create_snapshot_test.rb +0 -17
  243. data/test/integration/blobs/delete_blob_snapshots_test.rb +0 -19
  244. data/test/integration/blobs/delete_blobs_test.rb +0 -25
  245. data/test/integration/blobs/delete_container_test.rb +0 -24
  246. data/test/integration/blobs/delete_snapshot_test.rb +0 -17
  247. data/test/integration/blobs/get_blob_snapshot_test.rb +0 -18
  248. data/test/integration/blobs/get_blobs_test.rb +0 -31
  249. data/test/integration/blobs/get_page_range_test.rb +0 -19
  250. data/test/integration/blobs/list_blobs_test.rb +0 -39
  251. data/test/integration/blobs/list_containers_test.rb +0 -28
  252. data/test/integration/blobs/manage_blob_leases_test.rb +0 -45
  253. data/test/integration/blobs/manage_blob_metadata_test.rb +0 -51
  254. data/test/integration/blobs/manage_blob_properties_test.rb +0 -25
  255. data/test/integration/blobs/manage_blob_service_properties_test.rb +0 -38
  256. data/test/integration/blobs/manage_container_metadata_test.rb +0 -46
  257. data/test/integration/blobs/manage_container_permissions_test.rb +0 -17
  258. data/test/integration/blobs/update_page_range_test.rb +0 -20
  259. data/test/integration/queues/clear_messages_test.rb +0 -22
  260. data/test/integration/queues/create_queue_test.rb +0 -13
  261. data/test/integration/queues/delete_message_test.rb +0 -42
  262. data/test/integration/queues/delete_queue_test.rb +0 -24
  263. data/test/integration/queues/get_messages_test.rb +0 -39
  264. data/test/integration/queues/list_queues_test.rb +0 -43
  265. data/test/integration/queues/manage_queue_metadata_test.rb +0 -45
  266. data/test/integration/queues/manage_queue_service_properties_test.rb +0 -27
  267. data/test/integration/queues/peek_messages_test.rb +0 -55
  268. data/test/integration/queues/put_message_test.rb +0 -31
  269. data/test/integration/queues/update_message_test.rb +0 -46
  270. data/test/integration/service_bus/auth_test.rb +0 -18
  271. data/test/integration/service_bus/queues/create_queue_test.rb +0 -25
  272. data/test/integration/service_bus/queues/delete_message_from_queue_test.rb +0 -29
  273. data/test/integration/service_bus/queues/delete_queue_test.rb +0 -25
  274. data/test/integration/service_bus/queues/get_queue_test.rb +0 -23
  275. data/test/integration/service_bus/queues/list_queues_test.rb +0 -39
  276. data/test/integration/service_bus/queues/peek_message_from_queue_test.rb +0 -34
  277. data/test/integration/service_bus/queues/read_and_delete_message_from_queue_test.rb +0 -31
  278. data/test/integration/service_bus/queues/send_message_to_queue_test.rb +0 -22
  279. data/test/integration/service_bus/queues/unlock_message_from_queue_test.rb +0 -36
  280. data/test/integration/service_bus/rules/create_rule_test.rb +0 -19
  281. data/test/integration/service_bus/rules/delete_rule_test.rb +0 -17
  282. data/test/integration/service_bus/rules/get_rule_test.rb +0 -21
  283. data/test/integration/service_bus/rules/list_rules_test.rb +0 -24
  284. data/test/integration/service_bus/rules/rule_test.rb +0 -16
  285. data/test/integration/service_bus/subscriptions/create_subscription_test.rb +0 -25
  286. data/test/integration/service_bus/subscriptions/delete_message_from_subscription_test.rb +0 -31
  287. data/test/integration/service_bus/subscriptions/delete_subscription_test.rb +0 -30
  288. data/test/integration/service_bus/subscriptions/fetch_subscription_test.rb +0 -28
  289. data/test/integration/service_bus/subscriptions/list_subscriptions_test.rb +0 -23
  290. data/test/integration/service_bus/subscriptions/peek_lock_message_from_subscription_test.rb +0 -42
  291. data/test/integration/service_bus/subscriptions/read_delete_message_from_subscription_test.rb +0 -36
  292. data/test/integration/service_bus/subscriptions/subscription_test.rb +0 -31
  293. data/test/integration/service_bus/subscriptions/unlock_message_from_subscription_test.rb +0 -43
  294. data/test/integration/service_bus/topics/create_topic_test.rb +0 -25
  295. data/test/integration/service_bus/topics/delete_topic_test.rb +0 -25
  296. data/test/integration/service_bus/topics/get_topic_test.rb +0 -23
  297. data/test/integration/service_bus/topics/list_topics_test.rb +0 -39
  298. data/test/integration/service_bus/topics/send_message_to_topic_test.rb +0 -23
  299. data/test/integration/tables/auth_test.rb +0 -29
  300. data/test/integration/tables/creating_tables_test.rb +0 -16
  301. data/test/integration/tables/delete_entity_test.rb +0 -39
  302. data/test/integration/tables/deleting_table_test.rb +0 -22
  303. data/test/integration/tables/insert_entity_test.rb +0 -23
  304. data/test/integration/tables/merge_entity_test.rb +0 -28
  305. data/test/integration/tables/query_entities_test.rb +0 -131
  306. data/test/integration/tables/query_tables_test.rb +0 -63
  307. data/test/integration/tables/update_entity_test.rb +0 -54
  308. data/test/support/blobs.rb +0 -12
  309. data/test/support/table_names.rb +0 -44
  310. data/test/unit/atom_test.rb +0 -58
  311. data/test/unit/auth_test.rb +0 -24
  312. data/test/unit/blobs/blob_test.rb +0 -5
  313. data/test/unit/blobs/container_test.rb +0 -67
  314. data/test/unit/blobs/service_test.rb +0 -17
  315. data/test/unit/blobs/shared_access_signature_test.rb +0 -66
  316. data/test/unit/blobs_test.rb +0 -156
  317. data/test/unit/core/service_test.rb +0 -57
  318. data/test/unit/core/utils/interval_test.rb +0 -70
  319. data/test/unit/core/utils/queryable_test.rb +0 -69
  320. data/test/unit/core/utils/storage_service_properties_test.rb +0 -66
  321. data/test/unit/error_test.rb +0 -39
  322. data/test/unit/queues/message_test.rb +0 -40
  323. data/test/unit/queues/queue_test.rb +0 -64
  324. data/test/unit/queues/service_properties.rb +0 -35
  325. data/test/unit/request_test.rb +0 -38
  326. data/test/unit/response_test.rb +0 -43
  327. data/test/unit/service_bus/auth/authorizer_test.rb +0 -27
  328. data/test/unit/service_bus/auth/wrap_token_test.rb +0 -28
  329. data/test/unit/service_bus/queues/queue_test.rb +0 -38
  330. data/test/unit/service_bus/topics/topic_test.rb +0 -33
  331. data/test/unit/service_runtime/data/goalstate.xml +0 -9
  332. data/test/unit/service_runtime/data/roleenvironmentdata.xml +0 -29
  333. data/test/unit/service_runtime/data/runtime.xml +0 -6
  334. data/test/unit/service_runtime/role_environment_test.rb +0 -144
  335. data/test/unit/tables/auth/shared_key_lite_test.rb +0 -39
  336. data/test/unit/tables/auth/shared_key_test.rb +0 -45
  337. data/test/unit/tables/entities_collection_test.rb +0 -39
  338. data/test/unit/tables/entity_test.rb +0 -72
  339. data/test/unit/tables/table_test.rb +0 -57
  340. data/test/unit/tables_test.rb +0 -302
  341. data/test/unit/types_test.rb +0 -67
@@ -1,43 +0,0 @@
1
- require "integration/test_helper"
2
- require "azure/service_bus/topics"
3
- require "azure/service_bus/subscriptions"
4
- require "azure/service_bus/brokered_message"
5
-
6
- describe "Unlock Message from a Subscription" do
7
-
8
- after do
9
- ServiceBusTopicNameHelper.clean
10
- end
11
-
12
- before do
13
- @topic = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
14
- @subscription = @topic.subscriptions.create("subscription-name")
15
- @message = Azure::ServiceBus::BrokeredMessage.new("some text", "prop1" => "val1") do |m|
16
- m.to = "yo"
17
- m.label = 'my_label'
18
- end
19
- end
20
-
21
- it "should be able to unlock a message from a subscription" do
22
- Azure::ServiceBus::Topics.send_message_to_topic(@topic, @message)
23
-
24
- retrieved = Azure::ServiceBus::Subscriptions.peek_lock_message_from_subscription(@subscription)
25
- retrieved.must_be :kind_of?, Azure::ServiceBus::BrokeredMessage
26
- assert retrieved.valid?
27
-
28
- # Now there shouldn't be an available message in the subscription
29
- retrieved2 = Azure::ServiceBus::Subscriptions.peek_lock_message_from_subscription(@subscription)
30
- refute retrieved2.valid?
31
- retrieved2.error.message.must_equal "No messages available within the specified timeout period."
32
-
33
- # Unlock the message
34
- res = Azure::ServiceBus::Subscriptions.unlock_message_from_subscription(@subscription, retrieved)
35
- res.must_equal true
36
-
37
- # The message should be available once again
38
- retrieved = Azure::ServiceBus::Subscriptions.peek_lock_message_from_subscription(@subscription)
39
- assert retrieved.valid?
40
- retrieved.body.must_equal @message.body
41
- retrieved.to.must_equal @message.to
42
- end
43
- end
@@ -1,25 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Creating a Topic" do
4
-
5
- after do
6
- ServiceBusTopicNameHelper.clean
7
- end
8
-
9
- it "should be able to create a new topic" do
10
- # properties = {
11
- # 'LockDuration' => 'PT30S',
12
- # 'DefaultMessageTimeToLive' => 'P10675199DT2H48M5.4775807S',
13
- # 'DuplicateDetectionHistoryTimeWindow' => 'PT10M',
14
- # 'MaxSizeInMegabytes' => 1,
15
- # 'RequiresDuplicateDetection' => true,
16
- # 'RequiresSession' => false,
17
- # 'DeadLetteringOnMessageExpiration' => false
18
- # }
19
- properties = {}
20
-
21
- topic = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name, properties)
22
- topic.must_be_kind_of Azure::ServiceBus::Topics::Topic
23
- assert topic.valid?, "must be valid"
24
- end
25
- end
@@ -1,25 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Deleting a Topic" do
4
-
5
- after do
6
- ServiceBusTopicNameHelper.clean
7
- end
8
-
9
- it "should return false if the topic cannot be deleted" do
10
- topic = Azure::ServiceBus::Topics::Topic.new(ServiceBusTopicNameHelper.name)
11
- response = topic.delete
12
-
13
- response.must_equal false
14
- refute topic.valid?
15
- refute topic.frozen?
16
- end
17
-
18
- it "should return true if the topic can be deleted" do
19
- topic = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
20
- response = topic.delete
21
-
22
- response.must_equal true
23
- assert topic.frozen?
24
- end
25
- end
@@ -1,23 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Deleting a Topic" do
4
-
5
- after do
6
- ServiceBusTopicNameHelper.clean
7
- end
8
-
9
- it "should be able to get a topic by name" do
10
- topic_name = ServiceBusTopicNameHelper.name
11
- topic = Azure::ServiceBus::Topics.create(topic_name)
12
-
13
- result = Azure::ServiceBus::Topics.get(topic_name)
14
-
15
- result.must_equal topic
16
- end
17
-
18
- it "if the topic doesn't exists I should get a list of links to immediate child nodes" do
19
- result = Azure::ServiceBus::Topics.get('inexistent')
20
-
21
- result.must_be_nil
22
- end
23
- end
@@ -1,39 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Listing Topics" do
4
-
5
- after do
6
- ServiceBusTopicNameHelper.clean
7
- end
8
-
9
- it "should be able to get a list of topics" do
10
- t1 = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
11
- t2 = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
12
-
13
- result = Azure::ServiceBus::Topics.list
14
-
15
- result.must_be :kind_of?, Array
16
- result.count.must_equal 2
17
- result.must_include t1
18
- result.must_include t2
19
- end
20
-
21
- it "should be able to use $skip" do
22
- t1 = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
23
- t2 = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
24
- t3 = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
25
-
26
- result = Azure::ServiceBus::Topics.list(:skip => 1)
27
-
28
- result.count.must_equal 2
29
- end
30
-
31
- it "should be able to use $top" do
32
- t1 = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
33
- t2 = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
34
-
35
- result = Azure::ServiceBus::Topics.list(:top => 1)
36
-
37
- result.count.must_equal 1
38
- end
39
- end
@@ -1,23 +0,0 @@
1
- require "integration/test_helper"
2
- require "azure/service_bus/topics"
3
- require "azure/service_bus/brokered_message"
4
-
5
- describe "Sending a Message to a Topic" do
6
-
7
- after do
8
- ServiceBusTopicNameHelper.clean
9
- end
10
-
11
- before do
12
- @topic = Azure::ServiceBus::Topics.create(ServiceBusTopicNameHelper.name)
13
- end
14
-
15
- it "should be able to send a message to a topic" do
16
- message = Azure::ServiceBus::BrokeredMessage.new("some text", :prop1 => "val1") do |m|
17
- m.to = "me"
18
- m.label = 'my_label'
19
- end
20
- res = Azure::ServiceBus::Topics.send_message_to_topic(@topic, message)
21
- res.must_equal true
22
- end
23
- end
@@ -1,29 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Authorizing against the server" do
4
- let :uri do
5
- URI(Azure.config.table_host + "/Tables")
6
- end
7
-
8
- it "can make a simple request using SharedKey" do
9
- auth = Azure::Auth.new
10
- signer = Azure::Tables::Auth::SharedKey.new
11
-
12
- request = Azure::Request.new(:get, uri)
13
- auth.sign(request, signer)
14
- response = request.request!
15
-
16
- response.code.must_equal 200
17
- end
18
-
19
- it "can make a simple request using SharedKeyLite" do
20
- auth = Azure::Auth.new
21
- signer = Azure::Tables::Auth::SharedKeyLite.new
22
-
23
- request = Azure::Request.new(:get, uri)
24
- auth.sign(request, signer)
25
- response = request.request!
26
-
27
- response.code.must_equal 200
28
- end
29
- end
@@ -1,16 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Creating tables" do
4
- after do
5
- TableNameHelper.clean
6
- end
7
-
8
- it "creates a table with a valid name" do
9
- table = Azure::Tables::Table.create(TableNameHelper.name)
10
- table.must_be :kind_of?, Azure::Tables::Table
11
-
12
- # FIXME: for some reason MiniTest fails if we do table.must_be :valid?, but
13
- # only if we run rake, not if we run this test in isolation.
14
- assert table.valid?
15
- end
16
- end
@@ -1,39 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Deleting Entities" do
4
- after do
5
- TableNameHelper.clean
6
- end
7
-
8
- before do
9
- @table_name = TableNameHelper.name
10
- @table = Azure::Tables::Table.create(TableNameHelper.name)
11
- @entity = Azure::Tables::Entity.new(
12
- "PartitionKey" => "part1",
13
- "RowKey" => "row1",
14
- "Address" => "Mountain View",
15
- "FirstName" => "John",
16
- "Email" => "john@example.com"
17
- )
18
- @table.insert(@entity)
19
- end
20
-
21
- it "should return false if the entity doesn't exists" do
22
- entity = Azure::Tables::Entity.new do |e|
23
- e.reset(@entity)
24
- e["PartitionKey"] = "Foo"
25
- e.url = URI(e.url.to_s.gsub("part1", "Foo"))
26
- end
27
-
28
- result = entity.delete
29
- result.must_equal false
30
- end
31
-
32
- it "should be able to delete the entity" do
33
- result = @entity.delete
34
- result.must_equal true
35
-
36
- entity = Azure::Tables.query_entity(@table, "part1", "row1")
37
- entity.must_be_nil
38
- end
39
- end
@@ -1,22 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Deleting a Tables" do
4
- table_name = TableNameHelper.name
5
-
6
- after do
7
- TableNameHelper.clean
8
- end
9
-
10
- let :table do
11
- Azure::Tables::Table.new(table_name)
12
- end
13
-
14
- it "should return false if the table cannot be deleted" do
15
- Azure::Tables.delete(table).must_equal false
16
- end
17
-
18
- it "should return true if the table were deleted" do
19
- table = Azure::Tables::Table.create(table_name)
20
- Azure::Tables.delete(table).must_equal true
21
- end
22
- end
@@ -1,23 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Inserting Entities" do
4
- after do
5
- TableNameHelper.clean
6
- end
7
-
8
- it "should be able to insert an entity" do
9
- table = Azure::Tables::Table.create(TableNameHelper.name)
10
- entity = Azure::Tables::Entity.new(
11
- "PartitionKey" => "part1",
12
- "RowKey" => "row1",
13
- "Address" => "Mountain View",
14
- "FirstName" => "John",
15
- "Email" => "john@example.com"
16
- )
17
-
18
- table.insert(entity)
19
-
20
- assert entity.valid?
21
- entity.url.wont_be_nil
22
- end
23
- end
@@ -1,28 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Meging Entities" do
4
- after do
5
- TableNameHelper.clean
6
- end
7
-
8
- before do
9
- @table = Azure::Tables::Table.create(TableNameHelper.name)
10
- @entity = Azure::Tables::Entity.new(
11
- "PartitionKey" => "part1",
12
- "RowKey" => "row1",
13
- "Address" => "Mountain View",
14
- "FirstName" => "John",
15
- "Email" => "john@example.com"
16
- )
17
- @table.insert(@entity)
18
- end
19
-
20
- it "should be able to merge the entity directly against Table Service and preserve old not updated fields" do
21
- result = @entity.merge("Address" => "New York")
22
-
23
- result.must_equal true
24
-
25
- @entity["Address"].must_equal "New York"
26
- @entity["FirstName"].wont_be_nil
27
- end
28
- end
@@ -1,131 +0,0 @@
1
- require "integration/test_helper"
2
-
3
- describe "Query Entities" do
4
- after do
5
- TableNameHelper.clean
6
- end
7
-
8
- before do
9
- @table = Azure::Tables::Table.create(TableNameHelper.name)
10
- @entity = Azure::Tables::Entity.new(
11
- "PartitionKey" => "part1",
12
- "RowKey" => "row1",
13
- "Address" => "Mountain View",
14
- "FirstName" => "John",
15
- "Email" => "john@example.com"
16
- )
17
- end
18
-
19
- it "returns an empty list of entities if the table is empty" do
20
- entities = @table.entities
21
- entities.must_be :kind_of?, Azure::Tables::EntitiesCollection
22
- entities.must_be_empty
23
- end
24
-
25
- it "lists all entities in a table" do
26
- @table.insert(@entity)
27
-
28
- entities = @table.entities
29
- entities.must_include @entity
30
- end
31
-
32
- it "can find a specific entity in a table" do
33
- @table.insert(@entity)
34
-
35
- entity = @table.entities(
36
- partition_key: @entity["PartitionKey"],
37
- row_key: @entity["RowKey"]
38
- )
39
-
40
- entity.must_equal @entity
41
- end
42
-
43
- it "returns nil if a specific entity is not in the table" do
44
- entity = @table.entities(
45
- partition_key: "not_there",
46
- row_key: "not_there"
47
- )
48
-
49
- entity.must_be_nil
50
- end
51
-
52
- it "should be able to select which fields should be returned" do
53
- skip_if_emulator
54
-
55
- @table.insert(@entity)
56
-
57
- entity = @table.entities(
58
- partition_key: "part1",
59
- row_key: "row1",
60
- select: ["FirstName", "Email"]
61
- )
62
-
63
- entity.wont_be_nil
64
- entity["Address"].must_be_nil
65
- end
66
-
67
- it "should be able to filter queries" do
68
- @table.insert(@entity)
69
-
70
- entity_b = Azure::Tables::Entity.new(
71
- "PartitionKey" => "part1",
72
- "RowKey" => "row2",
73
- "Address" => "New York",
74
- "FirstName" => "John",
75
- "Email" => "john@example.com"
76
- )
77
-
78
- @table.insert(entity_b)
79
-
80
- entities = @table.entities(
81
- :filter => "Address eq 'New York'"
82
- )
83
-
84
- entities.size.must_equal 1
85
- entities.first["Address"].to_s.must_equal "New York"
86
- end
87
-
88
- it "should be able to set top of results" do
89
- @table.insert(@entity)
90
-
91
- entity_b = Azure::Tables::Entity.new(
92
- "PartitionKey" => "part1",
93
- "RowKey" => "row2",
94
- "Address" => "New York",
95
- "FirstName" => "John",
96
- "Email" => "john@example.com"
97
- )
98
-
99
- @table.insert(entity_b)
100
-
101
- entities = @table.entities(:top => 1)
102
- entities.size.must_equal 1
103
-
104
- entities = @table.entities(:top => 2)
105
- entities.size.must_equal 2
106
- end
107
-
108
- it "should be able to paginate" do
109
- ["New York", "Alabama", "Miami"].each_with_index do |city, i|
110
- entity = Azure::Tables::Entity.new(
111
- "PartitionKey" => "part1",
112
- "RowKey" => "row#{i}",
113
- "Address" => city
114
- )
115
-
116
- @table.insert(entity)
117
- end
118
-
119
- entities = @table.entities(:top => 2)
120
-
121
- entities.size.must_equal 2
122
- entities.first["Address"].to_s.must_equal "New York"
123
- entities.last["Address"].to_s.must_equal "Alabama"
124
-
125
- other_entities = entities.next
126
- other_entities.must_be :kind_of?, Azure::Tables::EntitiesCollection
127
-
128
- other_entities.size.must_equal 1
129
- other_entities.first["Address"].to_s.must_equal "Miami"
130
- end
131
- end