Skip to content

Commit fcd503c

Browse files
author
SilviaSWR
committed
tests(webhdfs): address unawaited coroutine warnings
1 parent f62400b commit fcd503c

1 file changed

Lines changed: 48 additions & 21 deletions

File tree

tests/test_provider_webhdfs.py

Lines changed: 48 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,13 @@ async def test_do_get_file(mock_provider, fake_request):
119119
),
120120
)
121121
)
122-
mock_provider._dav_response_data_generator = AsyncMock(return_value=AsyncMock())
122+
123+
async def fake_generator():
124+
yield b"data"
125+
126+
mock_provider._dav_response_data_generator = MagicMock(
127+
return_value=fake_generator()
128+
)
123129

124130
fake_request.ranges = [DAVRequestRange(DAVRangeType.RANGE, 0, 100, 200)]
125131
status, basic_data, generator, _ = await mock_provider._do_get(fake_request)
@@ -145,7 +151,13 @@ async def test_do_get_file_non_range(mock_provider, fake_request):
145151
),
146152
)
147153
)
148-
mock_provider._dav_response_data_generator = AsyncMock(return_value=AsyncMock())
154+
155+
async def fake_generator():
156+
yield b"data"
157+
158+
mock_provider._dav_response_data_generator = MagicMock(
159+
return_value=fake_generator()
160+
)
149161

150162
fake_request.ranges = None
151163
status, basic_data, generator, _ = await mock_provider._do_get(fake_request)
@@ -361,24 +373,31 @@ async def __aexit__(self, exc_type, exc_val, exc_tb):
361373

362374
@pytest.mark.asyncio
363375
async def test_do_put(mock_provider, fake_request):
364-
mock_response = MagicMock()
365-
mock_response.status_code = 200
366-
mock_response.json = MagicMock(return_value={"FileStatus": {}})
367-
mock_response.raise_for_status = MagicMock()
376+
mock_provider._precheck_source = AsyncMock(return_value=(True, False, False))
368377

369-
mock_provider.client.get.return_value = mock_response
378+
first_put = AsyncMock()
379+
first_put.status_code = 307
380+
first_put.headers = {
381+
"location": "http://fake-hdfs:9870/webhdfs/v1/file_put_location"
382+
}
383+
first_put.raise_for_status = MagicMock()
370384

371-
response = await mock_provider._do_put(fake_request)
385+
second_put = AsyncMock()
386+
second_put.status_code = 201
387+
second_put.raise_for_status = MagicMock()
372388

373-
assert response == 204
389+
mock_provider.client.put = AsyncMock(side_effect=[first_put, second_put])
390+
391+
response = await mock_provider._do_put(fake_request)
392+
assert response == 201
374393

375394

376395
@pytest.mark.asyncio
377396
async def test_do_copy(mock_provider, fake_request):
378397
mock_response = MagicMock()
379398
mock_response.status_code = 200
380399
mock_response.json = MagicMock(return_value={"FileStatus": {}})
381-
mock_response.raise_for_status = AsyncMock()
400+
mock_response.raise_for_status = MagicMock()
382401

383402
mock_provider.client.get.return_value = mock_response
384403

@@ -391,7 +410,7 @@ async def test_do_mkcol(mock_provider, fake_request):
391410
mock_response = MagicMock()
392411
mock_response.status_code = 200
393412
mock_response.json = MagicMock(return_value={"FileStatus": {}})
394-
mock_response.raise_for_status = AsyncMock()
413+
mock_response.raise_for_status = MagicMock()
395414

396415
mock_provider.client.get.return_value = mock_response
397416

@@ -405,7 +424,7 @@ async def test_do_propfind(mock_provider, fake_request):
405424
mock_response = MagicMock()
406425
mock_response.status_code = 200
407426
mock_response.json = MagicMock(return_value={"FileStatus": {}})
408-
mock_response.raise_for_status = AsyncMock()
427+
mock_response.raise_for_status = MagicMock()
409428

410429
mock_provider.client.get.return_value = mock_response
411430

@@ -477,7 +496,7 @@ async def test_do_head(mock_provider, fake_request):
477496
mock_response = MagicMock()
478497
mock_response.status_code = 200
479498
mock_response.json = MagicMock(return_value={"FileStatus": {}})
480-
mock_response.raise_for_status = AsyncMock()
499+
mock_response.raise_for_status = MagicMock()
481500

482501
mock_provider.client.get.return_value = mock_response
483502

@@ -491,7 +510,7 @@ async def test_do_precheck_destination(mock_provider, fake_request):
491510
mock_response = MagicMock()
492511
mock_response.status_code = 200
493512
mock_response.json = MagicMock(return_value={"FileStatus": {}})
494-
mock_response.raise_for_status = AsyncMock()
513+
mock_response.raise_for_status = MagicMock()
495514

496515
mock_provider.client.get.return_value = mock_response
497516

@@ -502,16 +521,24 @@ async def test_do_precheck_destination(mock_provider, fake_request):
502521

503522
@pytest.mark.asyncio
504523
async def test_do_move(mock_provider, fake_request):
505-
mock_response = MagicMock()
506-
mock_response.status_code = 200
507-
mock_response.json = MagicMock(return_value={"FileStatus": {}})
508-
mock_response.raise_for_status = MagicMock()
524+
fake_request.overwrite = True
509525

510-
mock_provider.client.get.return_value = mock_response
526+
mock_provider._precheck_destination = AsyncMock(return_value=(True, False, True))
527+
528+
mock_delete_response = MagicMock()
529+
mock_delete_response.status_code = 204
530+
mock_delete_response.raise_for_status = MagicMock()
531+
532+
mock_provider.client.delete = AsyncMock(return_value=mock_delete_response)
511533

512-
response = await mock_provider._do_move(fake_request)
534+
mock_put_response = MagicMock()
535+
mock_put_response.status_code = 201
536+
mock_put_response.raise_for_status = MagicMock()
513537

514-
assert response == 204
538+
mock_provider.client.put = AsyncMock(return_value=mock_put_response)
539+
540+
result = await mock_provider._do_move(fake_request)
541+
assert result == 204
515542

516543

517544
@pytest.mark.asyncio

0 commit comments

Comments
 (0)