test/requests/storage/test_copy_blob.rb in fog-azure-rm-0.1.0 vs test/requests/storage/test_copy_blob.rb in fog-azure-rm-0.1.1
- old
+ new
@@ -2,16 +2,35 @@
# Storage Blob Class
class TestCopyBlob < Minitest::Test
# This class posesses the test cases for the requests of copying blobs.
def setup
+ Fog.mock!
+ @mock_service = Fog::Storage::AzureRM.new(storage_account_credentials)
+ Fog.unmock!
+ @mocked_response = mocked_storage_http_error
+
@service = Fog::Storage::AzureRM.new(storage_account_credentials)
@blob_client = @service.instance_variable_get(:@blob_client)
- @copy_blob_reponse = ApiStub::Requests::Storage::File.copy_blob
+
+ @blob_copy_result = ApiStub::Requests::Storage::File.blob_copy_result
end
def test_copy_blob_success
- @blob_client.stub :copy_blob, @copy_blob_reponse do
- assert @service.copy_blob('destination_container', 'destination_blob', 'source_container', 'source_blob'), @copy_blob_reponse
+ @blob_client.stub :copy_blob, @blob_copy_result do
+ assert_equal @blob_copy_result, @service.copy_blob('destination_container', 'destination_blob', 'source_container', 'source_blob')
end
+ end
+
+ def test_copy_blob_http_exception
+ http_exception = ->(*) { raise Azure::Core::Http::HTTPError.new(@mocked_response) }
+ @blob_client.stub :copy_blob, http_exception do
+ assert_raises(RuntimeError) do
+ @service.copy_blob('destination_container', 'destination_blob', 'source_container', 'source_blob')
+ end
+ end
+ end
+
+ def test_copy_blob_mock
+ assert_equal @blob_copy_result, @mock_service.copy_blob('destination_container', 'destination_blob', 'source_container', 'source_blob')
end
end