azure 0.7.0 → 0.7.1

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 (125) hide show
  1. checksums.yaml +4 -4
  2. data/azure.gemspec +1 -1
  3. data/lib/azure.rb +1 -0
  4. data/lib/azure/blob/blob.rb +1 -1
  5. data/lib/azure/blob/blob_service.rb +14 -9
  6. data/lib/azure/blob/block.rb +2 -2
  7. data/lib/azure/blob/serialization.rb +6 -6
  8. data/lib/azure/configurable.rb +8 -0
  9. data/lib/azure/core/filtered_service.rb +1 -1
  10. data/lib/azure/core/http/debug_filter.rb +2 -2
  11. data/lib/azure/core/http/http_error.rb +1 -1
  12. data/lib/azure/core/http/http_filter.rb +15 -15
  13. data/lib/azure/core/http/http_request.rb +6 -6
  14. data/lib/azure/core/http/http_response.rb +1 -1
  15. data/lib/azure/core/http/retry_policy.rb +12 -12
  16. data/lib/azure/core/http/signer_filter.rb +1 -1
  17. data/lib/azure/core/service.rb +1 -1
  18. data/lib/azure/queue/queue_service.rb +91 -91
  19. data/lib/azure/queue/serialization.rb +1 -1
  20. data/lib/azure/service/cors.rb +1 -1
  21. data/lib/azure/service/logging.rb +1 -1
  22. data/lib/azure/service/metrics.rb +1 -1
  23. data/lib/azure/service/serialization.rb +10 -10
  24. data/lib/azure/service/signed_identifier.rb +1 -1
  25. data/lib/azure/service/storage_service.rb +2 -2
  26. data/lib/azure/service_bus/auth/wrap_service.rb +2 -2
  27. data/lib/azure/service_bus/brokered_message.rb +6 -6
  28. data/lib/azure/service_bus/interval.rb +2 -2
  29. data/lib/azure/service_bus/queue.rb +11 -11
  30. data/lib/azure/service_bus/relay.rb +4 -4
  31. data/lib/azure/service_bus/resource.rb +1 -1
  32. data/lib/azure/service_bus/rule.rb +1 -1
  33. data/lib/azure/service_bus/serialization.rb +2 -2
  34. data/lib/azure/service_bus/service_bus_service.rb +92 -92
  35. data/lib/azure/service_bus/sql_filter.rb +1 -1
  36. data/lib/azure/service_bus/sql_rule_action.rb +3 -3
  37. data/lib/azure/service_bus/subscription.rb +1 -1
  38. data/lib/azure/service_bus/topic.rb +11 -11
  39. data/lib/azure/storage_management/storage_management_service.rb +2 -2
  40. data/lib/azure/table/batch.rb +28 -28
  41. data/lib/azure/table/batch_response.rb +5 -5
  42. data/lib/azure/table/edmtype.rb +1 -1
  43. data/lib/azure/table/entity.rb +2 -2
  44. data/lib/azure/table/query.rb +6 -6
  45. data/lib/azure/table/serialization.rb +4 -4
  46. data/lib/azure/table/table_service.rb +30 -30
  47. data/lib/azure/version.rb +1 -1
  48. data/lib/azure/virtual_machine_management/virtual_machine_management_service.rb +5 -4
  49. data/lib/azure/virtual_network_management/serialization.rb +2 -2
  50. data/test/fixtures/list_os_images.xml +1 -1
  51. data/test/fixtures/list_virtual_networks.xml +0 -1
  52. data/test/fixtures/management_certificate.pem +55 -0
  53. data/test/fixtures/management_certificate.publishsettings +12 -0
  54. data/test/fixtures/updated_storage_accounts.xml +8 -8
  55. data/test/integration/blob/blob_metadata_test.rb +5 -5
  56. data/test/integration/blob/blob_pages_test.rb +5 -5
  57. data/test/integration/blob/blob_properties_test.rb +3 -3
  58. data/test/integration/blob/block_blob_test.rb +64 -15
  59. data/test/integration/blob/container/container_acl_test.rb +2 -2
  60. data/test/integration/blob/container/container_metadata_test.rb +2 -2
  61. data/test/integration/blob/container/create_container_test.rb +3 -3
  62. data/test/integration/blob/container/delete_container_test.rb +1 -1
  63. data/test/integration/blob/container/get_container_properties_test.rb +2 -2
  64. data/test/integration/blob/container/list_containers_test.rb +3 -3
  65. data/test/integration/blob/copy_blob_test.rb +4 -4
  66. data/test/integration/blob/create_blob_snapshot_test.rb +2 -2
  67. data/test/integration/blob/create_page_blob_test.rb +2 -2
  68. data/test/integration/blob/delete_blob_test.rb +4 -4
  69. data/test/integration/blob/get_blob_test.rb +7 -7
  70. data/test/integration/blob/informative_errors_test.rb +2 -2
  71. data/test/integration/blob/lease/acquire_lease_test.rb +1 -1
  72. data/test/integration/blob/lease/break_lease_test.rb +2 -2
  73. data/test/integration/blob/lease/release_lease_test.rb +2 -2
  74. data/test/integration/blob/lease/renew_lease_test.rb +2 -2
  75. data/test/integration/blob/list_blobs_test.rb +1 -1
  76. data/test/integration/database/delete_sql_server_firewall_test.rb +0 -1
  77. data/test/integration/database/delete_sql_server_test.rb +0 -1
  78. data/test/integration/location/Location_List_test.rb +0 -1
  79. data/test/integration/location/RoleSize_List_test.rb +0 -1
  80. data/test/integration/queue/clear_messages_test.rb +3 -3
  81. data/test/integration/queue/create_message_test.rb +5 -5
  82. data/test/integration/queue/create_queue_test.rb +1 -1
  83. data/test/integration/queue/delete_message_test.rb +4 -4
  84. data/test/integration/queue/delete_queue_test.rb +1 -1
  85. data/test/integration/queue/informative_errors_test.rb +2 -2
  86. data/test/integration/queue/list_messages_encoded_test.rb +2 -2
  87. data/test/integration/queue/list_messages_test.rb +3 -3
  88. data/test/integration/queue/list_queues_test.rb +1 -1
  89. data/test/integration/queue/peek_messages_test.rb +3 -3
  90. data/test/integration/queue/queue_metadata_test.rb +4 -4
  91. data/test/integration/queue/update_message_test.rb +4 -4
  92. data/test/integration/service_bus/informative_errors_test.rb +1 -1
  93. data/test/integration/service_bus/queues_test.rb +6 -6
  94. data/test/integration/service_bus/relay_test.rb +3 -3
  95. data/test/integration/service_bus/rules_test.rb +2 -2
  96. data/test/integration/service_bus/subscriptions_test.rb +4 -4
  97. data/test/integration/service_bus/topics_test.rb +2 -2
  98. data/test/integration/table/delete_entity_batch_test.rb +3 -3
  99. data/test/integration/table/delete_entity_test.rb +3 -3
  100. data/test/integration/table/delete_table_test.rb +1 -1
  101. data/test/integration/table/get_table_test.rb +4 -4
  102. data/test/integration/table/informative_errors_test.rb +2 -2
  103. data/test/integration/table/insert_entity_batch_test.rb +3 -3
  104. data/test/integration/table/insert_entity_test.rb +3 -3
  105. data/test/integration/table/insert_or_merge_entity_batch_test.rb +7 -7
  106. data/test/integration/table/insert_or_merge_entity_test.rb +8 -8
  107. data/test/integration/table/insert_or_replace_entity_batch_test.rb +7 -7
  108. data/test/integration/table/insert_or_replace_entity_test.rb +7 -7
  109. data/test/integration/table/merge_entity_batch_test.rb +1 -1
  110. data/test/integration/table/merge_entity_test.rb +1 -1
  111. data/test/integration/table/query_entities_test.rb +21 -21
  112. data/test/integration/table/query_tables_test.rb +2 -2
  113. data/test/integration/table/query_test.rb +21 -21
  114. data/test/integration/table/table_acl_test.rb +4 -4
  115. data/test/integration/table/update_entity_batch_test.rb +6 -6
  116. data/test/integration/table/update_entity_test.rb +8 -8
  117. data/test/unit/config/azure_test.rb +19 -0
  118. data/test/unit/core/auth/shared_key_lite_test.rb +3 -3
  119. data/test/unit/core/auth/shared_key_test.rb +2 -2
  120. data/test/unit/service/serialization_test.rb +44 -44
  121. metadata +4 -6
  122. data/.gitignore +0 -30
  123. data/.travis.yml +0 -13
  124. data/ChangeLog.txt +0 -56
  125. data/README.md +0 -702
@@ -16,12 +16,12 @@ require 'integration/test_helper'
16
16
  require 'azure/table/table_service'
17
17
  require 'azure/core/http/http_error'
18
18
 
19
- describe Azure::Table::TableService do
19
+ describe Azure::Table::TableService do
20
20
  describe '#get/set_acl' do
21
21
  subject { Azure::Table::TableService.new }
22
22
  let(:table_name){ TableNameHelper.name }
23
- let(:signed_identifier) {
24
- identifier = Azure::Service::SignedIdentifier.new
23
+ let(:signed_identifier) {
24
+ identifier = Azure::Service::SignedIdentifier.new
25
25
  identifier.id = 'MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI='
26
26
  identifier.access_policy = Azure::Service::AccessPolicy.new
27
27
  identifier.access_policy.start = '2009-09-28T08:49:37.0000000Z'
@@ -30,7 +30,7 @@ describe Azure::Table::TableService do
30
30
  identifier
31
31
  }
32
32
 
33
- before {
33
+ before {
34
34
  subject.create_table table_name
35
35
  }
36
36
  after { TableNameHelper.clean }
@@ -22,8 +22,8 @@ describe Azure::Table::TableService do
22
22
  subject { Azure::Table::TableService.new }
23
23
  let(:table_name){ TableNameHelper.name }
24
24
 
25
- let(:entity_properties){
26
- {
25
+ let(:entity_properties){
26
+ {
27
27
  "PartitionKey" => "testingpartition",
28
28
  "RowKey" => "abcd1234_existing",
29
29
  "CustomStringProperty" => "CustomPropertyValue",
@@ -51,7 +51,7 @@ describe Azure::Table::TableService do
51
51
 
52
52
  after { TableNameHelper.clean }
53
53
 
54
- it "updates an existing entity, removing any properties not included in the update operation" do
54
+ it "updates an existing entity, removing any properties not included in the update operation" do
55
55
  batch = Azure::Table::Batch.new table_name, entity_properties["PartitionKey"]
56
56
  batch.update entity_properties["RowKey"], {
57
57
  "PartitionKey" => entity_properties["PartitionKey"],
@@ -65,7 +65,7 @@ describe Azure::Table::TableService do
65
65
  etags[0].wont_equal @existing_etag
66
66
 
67
67
  result = subject.get_entity table_name, entity_properties["PartitionKey"], entity_properties["RowKey"]
68
-
68
+
69
69
  result.must_be_kind_of Azure::Table::Entity
70
70
  result.table.must_equal table_name
71
71
 
@@ -78,7 +78,7 @@ describe Azure::Table::TableService do
78
78
  result.properties["NewCustomProperty"].must_equal "NewCustomValue"
79
79
  end
80
80
 
81
- it "updates an existing entity, removing any properties not included in the update operation and adding nil one" do
81
+ it "updates an existing entity, removing any properties not included in the update operation and adding nil one" do
82
82
  batch = Azure::Table::Batch.new table_name, entity_properties["PartitionKey"]
83
83
  batch.update entity_properties["RowKey"], {
84
84
  "PartitionKey" => entity_properties["PartitionKey"],
@@ -92,7 +92,7 @@ describe Azure::Table::TableService do
92
92
  etags[0].wont_equal @existing_etag
93
93
 
94
94
  result = subject.get_entity table_name, entity_properties["PartitionKey"], entity_properties["RowKey"]
95
-
95
+
96
96
  result.must_be_kind_of Azure::Table::Entity
97
97
  result.table.must_equal table_name
98
98
 
@@ -21,8 +21,8 @@ describe Azure::Table::TableService do
21
21
  subject { Azure::Table::TableService.new }
22
22
  let(:table_name){ TableNameHelper.name }
23
23
 
24
- let(:entity_properties){
25
- {
24
+ let(:entity_properties){
25
+ {
26
26
  "PartitionKey" => "testingpartition",
27
27
  "RowKey" => "abcd1234_existing",
28
28
  "CustomStringProperty" => "CustomPropertyValue",
@@ -50,8 +50,8 @@ describe Azure::Table::TableService do
50
50
 
51
51
  after { TableNameHelper.clean }
52
52
 
53
- it "updates an existing entity, removing any properties not included in the update operation" do
54
- etag = subject.update_entity table_name, {
53
+ it "updates an existing entity, removing any properties not included in the update operation" do
54
+ etag = subject.update_entity table_name, {
55
55
  "PartitionKey" => entity_properties["PartitionKey"],
56
56
  "RowKey" => entity_properties["RowKey"],
57
57
  "NewCustomProperty" => "NewCustomValue"
@@ -61,7 +61,7 @@ describe Azure::Table::TableService do
61
61
  etag.wont_equal @existing_etag
62
62
 
63
63
  result = subject.get_entity table_name, entity_properties["PartitionKey"], entity_properties["RowKey"]
64
-
64
+
65
65
  result.must_be_kind_of Azure::Table::Entity
66
66
  result.table.must_equal table_name
67
67
 
@@ -74,8 +74,8 @@ describe Azure::Table::TableService do
74
74
  result.properties["NewCustomProperty"].must_equal "NewCustomValue"
75
75
  end
76
76
 
77
- it "updates an existing entity, removing any properties not included in the update operation and adding nil one" do
78
- etag = subject.update_entity table_name, {
77
+ it "updates an existing entity, removing any properties not included in the update operation and adding nil one" do
78
+ etag = subject.update_entity table_name, {
79
79
  "PartitionKey" => entity_properties["PartitionKey"],
80
80
  "RowKey" => entity_properties["RowKey"],
81
81
  "NewCustomProperty" => nil
@@ -85,7 +85,7 @@ describe Azure::Table::TableService do
85
85
  etag.wont_equal @existing_etag
86
86
 
87
87
  result = subject.get_entity table_name, entity_properties["PartitionKey"], entity_properties["RowKey"]
88
-
88
+
89
89
  result.must_be_kind_of Azure::Table::Entity
90
90
  result.table.must_equal table_name
91
91
 
@@ -106,6 +106,25 @@ describe Azure do
106
106
  end
107
107
  end
108
108
  end
109
+
110
+ describe 'using a publishsettings' do
111
+
112
+ describe 'loaded as a file' do
113
+ before do
114
+ Azure.management_certificate = Fixtures['management_certificate.publishsettings']
115
+ end
116
+
117
+ it 'should populate the private key' do
118
+ refute_nil(private_key)
119
+ private_key.must_be_kind_of(OpenSSL::PKey::RSA)
120
+ end
121
+
122
+ it 'should populate the public key' do
123
+ refute_nil(public_key)
124
+ public_key.must_be_kind_of(OpenSSL::X509::Certificate)
125
+ end
126
+ end
127
+ end
109
128
  end
110
129
  end
111
130
 
@@ -17,7 +17,7 @@ require 'azure/core/auth/shared_key_lite'
17
17
 
18
18
  describe Azure::Core::Auth::SharedKeyLite do
19
19
  subject { Azure::Core::Auth::SharedKeyLite.new 'account-name', 'YWNjZXNzLWtleQ==' }
20
-
20
+
21
21
  let(:verb) { 'POST' }
22
22
  let(:uri) { URI.parse 'http://dummy.uri/resource' }
23
23
  let(:headers) do
@@ -27,12 +27,12 @@ describe Azure::Core::Auth::SharedKeyLite do
27
27
  'Date' => 'foo'
28
28
  }
29
29
  end
30
- let(:headers_without_date) {
30
+ let(:headers_without_date) {
31
31
  headers_without_date = headers.clone
32
32
  headers_without_date.delete 'Date'
33
33
  headers_without_date
34
34
  }
35
-
35
+
36
36
  describe 'sign' do
37
37
  it 'creates a signature from the provided HTTP method, uri, and reduced set of standard headers' do
38
38
  subject.sign(verb, uri, headers).must_equal 'account-name:vVFnj/+27JFABZgpt5H8g/JVU2HuWFnjv5aeUIxQvBE='
@@ -17,7 +17,7 @@ require 'azure/core/auth/shared_key'
17
17
 
18
18
  describe Azure::Core::Auth::SharedKey do
19
19
  subject { Azure::Core::Auth::SharedKey.new 'account-name', 'YWNjZXNzLWtleQ==' }
20
-
20
+
21
21
  let(:verb) { 'POST' }
22
22
  let(:uri) { URI.parse 'http://dummy.uri/resource' }
23
23
  let(:headers) do
@@ -43,7 +43,7 @@ describe Azure::Core::Auth::SharedKey do
43
43
  subject.sign(verb, uri, headers).must_equal 'account-name:vcdxlDVoE1QvJerkg0ci3Wlnj2Qq8yzlsrkRf5dEU/I='
44
44
  end
45
45
  end
46
-
46
+
47
47
  describe 'canonicalized_headers' do
48
48
  it 'creates a canonicalized header string' do
49
49
  subject.canonicalized_headers(headers).must_equal "x-ms-imateapot:teapot\nx-ms-shortandstout:True"
@@ -36,7 +36,7 @@ describe Azure::Service::Serialization do
36
36
  it "accepts an XML string" do
37
37
  subject.signed_identifiers_from_xml signed_identifiers_xml
38
38
  end
39
-
39
+
40
40
  it "returns an Array of SignedIdentifier instances" do
41
41
  results = subject.signed_identifiers_from_xml signed_identifiers_xml
42
42
  results.must_be_kind_of Array
@@ -46,7 +46,7 @@ describe Azure::Service::Serialization do
46
46
  end
47
47
 
48
48
  describe "#signed_identifiers_to_xml" do
49
- let(:signed_identifiers) {
49
+ let(:signed_identifiers) {
50
50
  identifier = Azure::Service::SignedIdentifier.new
51
51
  identifier.id = "MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI="
52
52
  identifier.access_policy.start = "2009-09-28T08:49:37.0000000Z"
@@ -54,9 +54,9 @@ describe Azure::Service::Serialization do
54
54
  identifier.access_policy.permission = "rwd"
55
55
  [identifier]
56
56
  }
57
-
57
+
58
58
  let(:signed_identifiers_xml) { Fixtures["container_acl"]}
59
-
59
+
60
60
  it "accepts a list of SignedIdentifier instances" do
61
61
  subject.signed_identifiers_to_xml signed_identifiers
62
62
  end
@@ -75,7 +75,7 @@ describe Azure::Service::Serialization do
75
75
  it "accepts an XML node" do
76
76
  subject.signed_identifier_from_xml signed_identifier_xml
77
77
  end
78
-
78
+
79
79
  it "returns a SignedIdentifier instance" do
80
80
  identifier = subject.signed_identifier_from_xml signed_identifier_xml
81
81
  identifier.must_be_kind_of Azure::Service::SignedIdentifier
@@ -94,7 +94,7 @@ describe Azure::Service::Serialization do
94
94
  it "accepts an XML node" do
95
95
  subject.access_policy_from_xml access_policy_xml
96
96
  end
97
-
97
+
98
98
  it "returns a AccessPolicy instance" do
99
99
  access_policy = subject.access_policy_from_xml access_policy_xml
100
100
  access_policy.must_be_kind_of Azure::Service::AccessPolicy
@@ -115,7 +115,7 @@ describe Azure::Service::Serialization do
115
115
 
116
116
  describe "when passed an instance of EnumerationResults" do
117
117
  let(:enumeration_results) { Azure::Service::EnumerationResults.new }
118
-
118
+
119
119
  it "parses the XML and populates the provided EnumerationResults instance" do
120
120
  result = subject.enumeration_results_from_xml enumeration_results_xml, enumeration_results
121
121
  result.must_be :kind_of?, Azure::Service::EnumerationResults
@@ -189,16 +189,16 @@ describe Azure::Service::Serialization do
189
189
  end
190
190
 
191
191
  describe "#retention_policy_to_xml" do
192
- let(:retention_policy) {
192
+ let(:retention_policy) {
193
193
  retention_policy = Azure::Service::RetentionPolicy.new
194
194
  retention_policy.enabled = true
195
195
  retention_policy.days = 7
196
-
196
+
197
197
  retention_policy
198
198
  }
199
-
199
+
200
200
  let(:retention_policy_xml) { Fixtures["retention_policy"]}
201
-
201
+
202
202
  it "accepts a RetentionPolicy instance and an Nokogiri::XML::Builder instance" do
203
203
  Nokogiri::XML::Builder.new do |xml|
204
204
  subject.retention_policy_to_xml retention_policy, xml
@@ -215,11 +215,11 @@ describe Azure::Service::Serialization do
215
215
 
216
216
  describe "#retention_policy_from_xml" do
217
217
  let(:retention_policy_xml) { Nokogiri.Slop(Fixtures["storage_service_properties"]).root.HourMetrics.RetentionPolicy }
218
-
218
+
219
219
  it "accepts an XML Node" do
220
220
  subject.retention_policy_from_xml retention_policy_xml
221
221
  end
222
-
222
+
223
223
  it "returns an RetentionPolicy instance" do
224
224
  retention_policy = subject.retention_policy_from_xml retention_policy_xml
225
225
  retention_policy.wont_be_nil
@@ -234,7 +234,7 @@ describe Azure::Service::Serialization do
234
234
  end
235
235
 
236
236
  describe "#hour_metrics_to_xml" do
237
- let(:metrics) {
237
+ let(:metrics) {
238
238
  metrics = Azure::Service::Metrics.new
239
239
  metrics.version = "1.0"
240
240
  metrics.enabled = true
@@ -242,12 +242,12 @@ describe Azure::Service::Serialization do
242
242
  retention_policy = metrics.retention_policy = Azure::Service::RetentionPolicy.new
243
243
  retention_policy.enabled = true
244
244
  retention_policy.days = 7
245
-
245
+
246
246
  metrics
247
247
  }
248
-
248
+
249
249
  let(:metrics_xml) { Fixtures["metrics"]}
250
-
250
+
251
251
  it "accepts a Metrics instance and an Nokogiri::XML::Builder instance" do
252
252
  Nokogiri::XML::Builder.new do |xml|
253
253
  subject.hour_metrics_to_xml metrics, xml
@@ -261,19 +261,19 @@ describe Azure::Service::Serialization do
261
261
  builder.to_xml.must_equal metrics_xml
262
262
  end
263
263
  end
264
-
264
+
265
265
  describe "#metrics_from_xml" do
266
266
  let(:metrics_xml) { Nokogiri.Slop(Fixtures["storage_service_properties"]).root.HourMetrics }
267
267
  let(:mock_retention_policy) { mock }
268
268
 
269
- before {
269
+ before {
270
270
  subject.expects(:retention_policy_from_xml).returns(mock_retention_policy)
271
271
  }
272
-
272
+
273
273
  it "accepts an XML Node" do
274
274
  subject.metrics_from_xml metrics_xml
275
275
  end
276
-
276
+
277
277
  it "returns an Metrics instance" do
278
278
  metrics = subject.metrics_from_xml metrics_xml
279
279
  metrics.wont_be_nil
@@ -289,9 +289,9 @@ describe Azure::Service::Serialization do
289
289
  end
290
290
  end
291
291
 
292
-
292
+
293
293
  describe "#logging_to_xml" do
294
- let(:logging) {
294
+ let(:logging) {
295
295
  logging = Azure::Service::Logging.new
296
296
  logging.version = "1.0"
297
297
  logging.delete = true
@@ -301,12 +301,12 @@ describe Azure::Service::Serialization do
301
301
  retention_policy = logging.retention_policy = Azure::Service::RetentionPolicy.new
302
302
  retention_policy.enabled = true
303
303
  retention_policy.days = 7
304
-
304
+
305
305
  logging
306
306
  }
307
-
307
+
308
308
  let(:logging_xml) { Fixtures["logging"]}
309
-
309
+
310
310
  it "accepts a Logging instance and an Nokogiri::XML::Builder instance" do
311
311
  Nokogiri::XML::Builder.new do |xml|
312
312
  subject.logging_to_xml logging, xml
@@ -325,14 +325,14 @@ describe Azure::Service::Serialization do
325
325
  let(:logging_xml) { Nokogiri.Slop(Fixtures["storage_service_properties"]).root.Logging }
326
326
  let(:mock_retention_policy) { mock }
327
327
 
328
- before {
328
+ before {
329
329
  subject.expects(:retention_policy_from_xml).returns(mock_retention_policy)
330
330
  }
331
-
331
+
332
332
  it "accepts an XML Node" do
333
333
  subject.logging_from_xml logging_xml
334
334
  end
335
-
335
+
336
336
  it "returns an Logging instance" do
337
337
  logging = subject.logging_from_xml logging_xml
338
338
  logging.wont_be_nil
@@ -350,7 +350,7 @@ describe Azure::Service::Serialization do
350
350
  end
351
351
 
352
352
  describe "#service_properties_to_xml" do
353
- let(:service_properties) {
353
+ let(:service_properties) {
354
354
  service_properties = Azure::Service::StorageServiceProperties.new
355
355
  service_properties.default_service_version = "2011-08-18"
356
356
  logging = service_properties.logging = Azure::Service::Logging.new
@@ -401,9 +401,9 @@ describe Azure::Service::Serialization do
401
401
 
402
402
  service_properties
403
403
  }
404
-
404
+
405
405
  let(:service_properties_xml) { Fixtures["storage_service_properties"]}
406
-
406
+
407
407
  it "accepts a StorageServiceProperties instance" do
408
408
  subject.service_properties_to_xml service_properties
409
409
  end
@@ -420,16 +420,16 @@ describe Azure::Service::Serialization do
420
420
  let(:mock_metrics) { mock }
421
421
  let(:mock_cors) { mock }
422
422
 
423
- before {
423
+ before {
424
424
  subject.expects(:logging_from_xml).returns(mock_logging)
425
425
  subject.expects(:metrics_from_xml).twice.returns(mock_metrics)
426
426
  subject.expects(:cors_from_xml).returns(mock_cors)
427
427
  }
428
-
428
+
429
429
  it "accepts an XML string" do
430
430
  subject.service_properties_from_xml service_properties_xml
431
431
  end
432
-
432
+
433
433
  it "returns an StorageServiceProperties instance" do
434
434
  service_properties = subject.service_properties_from_xml service_properties_xml
435
435
  service_properties.wont_be_nil
@@ -469,15 +469,15 @@ describe Azure::Service::Serialization do
469
469
  let(:document) { Nokogiri.Slop xml_data }
470
470
  let(:root_node) { document.root }
471
471
  let(:non_slop_node) { Nokogiri.parse(xml_data).root }
472
-
472
+
473
473
  describe "when passed a String" do
474
474
 
475
- it "parses the string into a Nokogiri::XML::Element node" do
475
+ it "parses the string into a Nokogiri::XML::Element node" do
476
476
  result = subject.slopify(xml_data)
477
477
  result.must_be_kind_of Nokogiri::XML::Element
478
478
  end
479
-
480
- it "returns the root of the parsed Document" do
479
+
480
+ it "returns the root of the parsed Document" do
481
481
  result = subject.slopify(xml_data)
482
482
  result.name.must_equal root_node.name
483
483
  end
@@ -487,18 +487,18 @@ describe Azure::Service::Serialization do
487
487
  result.must_respond_to :method_missing
488
488
  end
489
489
  end
490
-
490
+
491
491
  describe "when passed a Nokogiri::XML::Document" do
492
- it "returns a Nokogiri::XML::Element node" do
492
+ it "returns a Nokogiri::XML::Element node" do
493
493
  result = subject.slopify(document)
494
494
  result.must_be_kind_of Nokogiri::XML::Element
495
495
  end
496
496
 
497
- it "returns the root of the Document" do
497
+ it "returns the root of the Document" do
498
498
  result = subject.slopify(document)
499
499
  result.name.must_equal root_node.name
500
500
  end
501
-
501
+
502
502
  it "enables Nokogiri 'Slop' mode on the returned Element" do
503
503
  result = subject.slopify(xml_data)
504
504
  result.must_respond_to :method_missing
@@ -506,7 +506,7 @@ describe Azure::Service::Serialization do
506
506
  end
507
507
 
508
508
  describe "when passed a Nokogiri::XML::Element" do
509
- it "returns the Element unchanged" do
509
+ it "returns the Element unchanged" do
510
510
  result = subject.slopify(root_node)
511
511
  result.must_equal root_node
512
512
  end