Skip to content

Commit 70a9e9e

Browse files
committed
Use parametrize for all tests
1 parent a4fd8f5 commit 70a9e9e

File tree

1 file changed

+8
-142
lines changed

1 file changed

+8
-142
lines changed

tests/worker/test_workflow.py

Lines changed: 8 additions & 142 deletions
Original file line numberDiff line numberDiff line change
@@ -5497,6 +5497,7 @@ async def my_dynamic_signal(self, name: str, args: Sequence[RawValue]) -> None:
54975497
await workflow.wait_condition(lambda: self.handlers_may_finish)
54985498

54995499

5500+
@pytest.mark.parametrize("handler_type", ["signal", "update"])
55005501
@pytest.mark.parametrize(
55015502
"handler_registration", ["late_registered", "not_late_registered"]
55025503
)
@@ -5505,161 +5506,26 @@ async def my_dynamic_signal(self, name: str, args: Sequence[RawValue]) -> None:
55055506
"handler_waiting",
55065507
["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
55075508
)
5508-
async def test_unfinished_update_handler_with_workflow_cancellation(
5509-
client: Client,
5510-
env: WorkflowEnvironment,
5511-
handler_registration: Literal["late_registered", "not_late_registered"],
5512-
handler_dynamism: Literal["dynamic", "not_dynamic"],
5513-
handler_waiting: Literal["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5514-
):
5515-
if env.supports_time_skipping:
5516-
pytest.skip(
5517-
"Java test server: https://github.com/temporalio/sdk-java/issues/1903"
5518-
)
5519-
await _UnfinishedHandlersOnWorkflowTerminationTest(
5520-
client,
5521-
"update",
5522-
"cancellation",
5523-
handler_registration,
5524-
handler_dynamism,
5525-
handler_waiting,
5526-
).test_warning_is_issued_on_exit_with_unfinished_handler()
5527-
5528-
5529-
@pytest.mark.parametrize(
5530-
"handler_registration", ["late_registered", "not_late_registered"]
5531-
)
5532-
@pytest.mark.parametrize("handler_dynamism", ["dynamic", "not_dynamic"])
5533-
@pytest.mark.parametrize(
5534-
"handler_waiting",
5535-
["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5536-
)
5537-
async def test_unfinished_signal_handler_with_workflow_cancellation(
5538-
client: Client,
5539-
handler_registration: Literal["late_registered", "not_late_registered"],
5540-
handler_dynamism: Literal["dynamic", "not_dynamic"],
5541-
handler_waiting: Literal["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5542-
):
5543-
await _UnfinishedHandlersOnWorkflowTerminationTest(
5544-
client,
5545-
"signal",
5546-
"cancellation",
5547-
handler_registration,
5548-
handler_dynamism,
5549-
handler_waiting,
5550-
).test_warning_is_issued_on_exit_with_unfinished_handler()
5551-
5552-
5553-
@pytest.mark.parametrize(
5554-
"handler_registration", ["late_registered", "not_late_registered"]
5555-
)
5556-
@pytest.mark.parametrize("handler_dynamism", ["dynamic", "not_dynamic"])
5557-
@pytest.mark.parametrize(
5558-
"handler_waiting",
5559-
["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5560-
)
5561-
async def test_unfinished_update_handler_with_workflow_failure(
5562-
client: Client,
5563-
env: WorkflowEnvironment,
5564-
handler_registration: Literal["late_registered", "not_late_registered"],
5565-
handler_dynamism: Literal["dynamic", "not_dynamic"],
5566-
handler_waiting: Literal["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5567-
):
5568-
if env.supports_time_skipping:
5569-
pytest.skip(
5570-
"Java test server: https://github.com/temporalio/sdk-java/issues/1903"
5571-
)
5572-
await _UnfinishedHandlersOnWorkflowTerminationTest(
5573-
client,
5574-
"update",
5575-
"failure",
5576-
handler_registration,
5577-
handler_dynamism,
5578-
handler_waiting,
5579-
).test_warning_is_issued_on_exit_with_unfinished_handler()
5580-
5581-
5582-
@pytest.mark.parametrize(
5583-
"handler_registration", ["late_registered", "not_late_registered"]
5584-
)
5585-
@pytest.mark.parametrize("handler_dynamism", ["dynamic", "not_dynamic"])
55865509
@pytest.mark.parametrize(
5587-
"handler_waiting",
5588-
["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5510+
"workflow_termination_type", ["cancellation", "failure", "continue-as-new"]
55895511
)
5590-
async def test_unfinished_signal_handler_with_workflow_failure(
5512+
async def test_unfinished_handler_on_workflow_termination(
55915513
client: Client,
55925514
env: WorkflowEnvironment,
5515+
handler_type: Literal["signal", "update"],
55935516
handler_registration: Literal["late_registered", "not_late_registered"],
55945517
handler_dynamism: Literal["dynamic", "not_dynamic"],
55955518
handler_waiting: Literal["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5519+
workflow_termination_type: Literal["cancellation", "failure", "continue-as-new"],
55965520
):
5597-
if env.supports_time_skipping:
5598-
pytest.skip(
5599-
"Java test server: https://github.com/temporalio/sdk-java/issues/2127"
5600-
)
5601-
await _UnfinishedHandlersOnWorkflowTerminationTest(
5602-
client,
5603-
"signal",
5604-
"failure",
5605-
handler_registration,
5606-
handler_dynamism,
5607-
handler_waiting,
5608-
).test_warning_is_issued_on_exit_with_unfinished_handler()
5609-
5610-
5611-
@pytest.mark.parametrize(
5612-
"handler_registration", ["late_registered", "not_late_registered"]
5613-
)
5614-
@pytest.mark.parametrize("handler_dynamism", ["dynamic", "not_dynamic"])
5615-
@pytest.mark.parametrize(
5616-
"handler_waiting",
5617-
["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5618-
)
5619-
async def test_unfinished_update_handler_with_continue_as_new(
5620-
client: Client,
5621-
env: WorkflowEnvironment,
5622-
handler_registration: Literal["late_registered", "not_late_registered"],
5623-
handler_dynamism: Literal["dynamic", "not_dynamic"],
5624-
handler_waiting: Literal["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5625-
):
5626-
if env.supports_time_skipping:
5521+
if handler_type == "update" and env.supports_time_skipping:
56275522
pytest.skip(
56285523
"Java test server: https://github.com/temporalio/sdk-java/issues/1903"
56295524
)
56305525
await _UnfinishedHandlersOnWorkflowTerminationTest(
56315526
client,
5632-
"update",
5633-
"continue-as-new",
5634-
handler_registration,
5635-
handler_dynamism,
5636-
handler_waiting,
5637-
).test_warning_is_issued_on_exit_with_unfinished_handler()
5638-
5639-
5640-
@pytest.mark.parametrize(
5641-
"handler_registration", ["late_registered", "not_late_registered"]
5642-
)
5643-
@pytest.mark.parametrize("handler_dynamism", ["dynamic", "not_dynamic"])
5644-
@pytest.mark.parametrize(
5645-
"handler_waiting",
5646-
["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5647-
)
5648-
async def test_unfinished_signal_handler_with_continue_as_new(
5649-
client: Client,
5650-
env: WorkflowEnvironment,
5651-
handler_registration: Literal["late_registered", "not_late_registered"],
5652-
handler_dynamism: Literal["dynamic", "not_dynamic"],
5653-
handler_waiting: Literal["wait_all_handlers_finish", "no_wait_all_handlers_finish"],
5654-
):
5655-
if env.supports_time_skipping:
5656-
pytest.skip(
5657-
"Java test server: https://github.com/temporalio/sdk-java/issues/2127"
5658-
)
5659-
await _UnfinishedHandlersOnWorkflowTerminationTest(
5660-
client,
5661-
"signal",
5662-
"continue-as-new",
5527+
handler_type,
5528+
workflow_termination_type,
56635529
handler_registration,
56645530
handler_dynamism,
56655531
handler_waiting,

0 commit comments

Comments
 (0)