Skip to content

Commit 6bdcf63

Browse files
committed
Update test_worker.py
1 parent 947b926 commit 6bdcf63

1 file changed

Lines changed: 14 additions & 16 deletions

File tree

tests/test_serverless/test_worker.py

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -272,29 +272,27 @@ async def test_run_worker_generator_handler_exception(
272272
'''
273273
Test run_worker with generator handler.
274274
275-
Args:
276-
mock_stream_result (_type_): _description_
277-
mock_run_job_generator (_type_): _description_
278-
mock_run_job (_type_): _description_
279-
mock_get_job (_type_): _description_
275+
This test verifies that:
276+
- `stream_result` is called exactly once before an exception occurs.
277+
- `run_job` is never called since `handler` is a generator function.
278+
- An error is correctly reported back via `send_result`.
280279
'''
281-
# Define the mock behaviors
282-
mock_get_job.return_value = {
283-
"id": "generator-123-exception", "input": {"number": 1}}
280+
RunPodLogger().set_level("DEBUG")
284281

285-
# Test generator handler
286-
generator_config = {
287-
"handler": generator_handler_exception, "refresh_worker": True}
282+
# Setup: Mock `get_job` to return a predefined job.
283+
mock_get_job.return_value = {"id": "generator-123-exception", "input": {"number": 1}}
288284

289-
RunPodLogger().set_level("DEBUG")
290-
runpod.serverless.start(generator_config)
285+
runpod.serverless.start({
286+
"handler": generator_handler_exception,
287+
"refresh_worker": True
288+
})
291289

292-
assert mock_stream_result.call_count == 1
293-
assert not mock_run_job.called
290+
assert mock_stream_result.call_count == 1, "Expected `stream_result` to be called exactly once."
291+
assert not mock_run_job.called, "`run_job` should not be called for generator-based handlers."
294292

295293
# Since return_aggregate_stream is NOT activated, we should not submit any outputs.
296294
_, args, _ = mock_send_result.mock_calls[0]
297-
assert 'error' in args[1]
295+
assert 'error' in args[1], "Expected the error to be reported in the results."
298296

299297
@patch("runpod.serverless.modules.rp_scale.get_job")
300298
@patch("runpod.serverless.worker.run_job")

0 commit comments

Comments
 (0)