@@ -254,3 +254,78 @@ async def test_delete_object(self, mock_async_storage_client):
254254 assert request .if_generation_not_match == if_generation_not_match
255255 assert request .if_metageneration_match == if_metageneration_match
256256 assert request .if_metageneration_not_match == if_metageneration_not_match
257+
258+ @mock .patch ("google.cloud._storage_v2.StorageAsyncClient" )
259+ @pytest .mark .asyncio
260+ async def test_get_object (self , mock_async_storage_client ):
261+ # Arrange
262+ mock_transport_cls = mock .MagicMock ()
263+ mock_async_storage_client .get_transport_class .return_value = mock_transport_cls
264+ mock_gapic_client = mock .AsyncMock ()
265+ mock_async_storage_client .return_value = mock_gapic_client
266+
267+ client = async_grpc_client .AsyncGrpcClient (
268+ credentials = _make_credentials (spec = AnonymousCredentials )
269+ )
270+
271+ bucket_name = "bucket"
272+ object_name = "object"
273+
274+ # Act
275+ await client .get_object (
276+ bucket_name ,
277+ object_name ,
278+ )
279+
280+ # Assert
281+ call_args , call_kwargs = mock_gapic_client .get_object .call_args
282+ request = call_kwargs ["request" ]
283+ assert request .bucket == "projects/_/buckets/bucket"
284+ assert request .object == "object"
285+ assert request .soft_deleted is False
286+
287+ @mock .patch ("google.cloud._storage_v2.StorageAsyncClient" )
288+ @pytest .mark .asyncio
289+ async def test_get_object_with_all_parameters (self , mock_async_storage_client ):
290+ # Arrange
291+ mock_transport_cls = mock .MagicMock ()
292+ mock_async_storage_client .get_transport_class .return_value = mock_transport_cls
293+ mock_gapic_client = mock .AsyncMock ()
294+ mock_async_storage_client .return_value = mock_gapic_client
295+
296+ client = async_grpc_client .AsyncGrpcClient (
297+ credentials = _make_credentials (spec = AnonymousCredentials )
298+ )
299+
300+ bucket_name = "bucket"
301+ object_name = "object"
302+ generation = 123
303+ if_generation_match = 456
304+ if_generation_not_match = 789
305+ if_metageneration_match = 111
306+ if_metageneration_not_match = 222
307+ soft_deleted = True
308+
309+ # Act
310+ await client .get_object (
311+ bucket_name ,
312+ object_name ,
313+ generation = generation ,
314+ if_generation_match = if_generation_match ,
315+ if_generation_not_match = if_generation_not_match ,
316+ if_metageneration_match = if_metageneration_match ,
317+ if_metageneration_not_match = if_metageneration_not_match ,
318+ soft_deleted = soft_deleted ,
319+ )
320+
321+ # Assert
322+ call_args , call_kwargs = mock_gapic_client .get_object .call_args
323+ request = call_kwargs ["request" ]
324+ assert request .bucket == "projects/_/buckets/bucket"
325+ assert request .object == "object"
326+ assert request .generation == generation
327+ assert request .if_generation_match == if_generation_match
328+ assert request .if_generation_not_match == if_generation_not_match
329+ assert request .if_metageneration_match == if_metageneration_match
330+ assert request .if_metageneration_not_match == if_metageneration_not_match
331+ assert request .soft_deleted is True
0 commit comments