29 lines
763 B
Python
29 lines
763 B
Python
"""Tests for the extracted GatewayKanbanWatchersMixin (god-file Phase 3).
|
|
|
|
The kanban watcher loops were lifted out of gateway/run.py into a mixin that
|
|
GatewayRunner inherits. These tests confirm the mixin exposes the methods and
|
|
that GatewayRunner picks them up via the MRO (behavior-neutral relocation).
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
import inspect
|
|
|
|
from gateway.kanban_watchers import GatewayKanbanWatchersMixin
|
|
|
|
KANBAN_METHODS = [
|
|
"_kanban_notifier_watcher",
|
|
"_kanban_dispatcher_watcher",
|
|
"_kanban_advance",
|
|
"_kanban_unsub",
|
|
"_kanban_rewind",
|
|
"_deliver_kanban_artifacts",
|
|
]
|
|
|
|
|
|
def test_mixin_defines_kanban_methods():
|
|
for m in KANBAN_METHODS:
|
|
assert hasattr(GatewayKanbanWatchersMixin, m), f"mixin missing {m}"
|
|
|
|
|