Coverage for src / ocarina / infra / act_counter.py: 100.00%
10 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-06-04 15:56 +0200
« prev ^ index » next coverage.py v7.13.5, created at 2026-06-04 15:56 +0200
1"""Steps counter ABC."""
3from abc import abstractmethod
4from typing import Protocol, runtime_checkable
7@runtime_checkable
8class ActCounter(Protocol):
9 """Tracks act() call count across a test execution."""
11 @abstractmethod
12 def incr_act_call_count(self) -> None:
13 """Increment count."""
14 raise NotImplementedError # pragma: no cover
16 @abstractmethod
17 def reset(self) -> None:
18 """Reset counter to zero."""
19 raise NotImplementedError # pragma: no cover
21 @abstractmethod
22 def get(self) -> int:
23 """Return current count."""
24 raise NotImplementedError # pragma: no cover