Skip to content

Commit 5de64ea

Browse files
authored
test: cover abstract method pass lines for 100% coverage (#31)
1 parent 5dd0917 commit 5de64ea

1 file changed

Lines changed: 36 additions & 0 deletions

File tree

tests/test_integration.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -550,3 +550,39 @@ async def execute(self, inputs, context):
550550
return ActionResult(data={"greeting": "second"})
551551

552552
assert integration._action_handlers["test_action"] is Second
553+
554+
555+
# ── Abstract base class pass-through ───────────────────────────────────────
556+
557+
558+
async def test_action_handler_abstract_execute_returns_none():
559+
"""super().execute() on the ABC body executes the `pass` and returns None."""
560+
561+
class Concrete(ActionHandler):
562+
async def execute(self, inputs, context):
563+
return await super().execute(inputs, context)
564+
565+
result = await Concrete().execute({}, None)
566+
assert result is None
567+
568+
569+
async def test_polling_trigger_handler_abstract_poll_returns_none():
570+
"""super().poll() on the ABC body executes the `pass` and returns None."""
571+
572+
class Concrete(PollingTriggerHandler):
573+
async def poll(self, inputs, last_poll_ts, context):
574+
return await super().poll(inputs, last_poll_ts, context)
575+
576+
result = await Concrete().poll({}, None, None)
577+
assert result is None
578+
579+
580+
async def test_connected_account_handler_abstract_get_account_info_returns_none():
581+
"""super().get_account_info() on the ABC body executes the `pass` and returns None."""
582+
583+
class Concrete(ConnectedAccountHandler):
584+
async def get_account_info(self, context):
585+
return await super().get_account_info(context)
586+
587+
result = await Concrete().get_account_info(None)
588+
assert result is None

0 commit comments

Comments
 (0)