forked from genewildish/Mainline
refactoring to improve testability and modularization of the mainline terminal application #1
Reference in New Issue
Block a user
Delete Branch "testability_modularization"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Changes
Phase 1 - Testability Improvements
engine/config.pywith full type hintsPhase 2 - Modularization of Scroll Engine
engine/scroll.py- cleaner separation of concernsengine/viewport.pyengine/frame.pyPhase 3 - API Efficiency
engine/layers.pyPhase 4 - Event-Driven Architecture
engine/eventbus.py- thread-safe event publishingengine/events.py- event type definitionsengine/emitters.py- emitter protocolsengine/controller.py- coordinates ntfy/mic monitoringTesting
test_config.py- Config dataclass and CLI parsingtest_controller.py- StreamControllertest_emitters.py- Emitter protocolstest_eventbus.py- EventBus thread-safetytest_events.py- Event typestest_frame.py- Frame timingtest_layers.py- Layer renderingtest_mic.py- Microphone monitortest_ntfy.py- NTFY pollertest_types.py- Type definitionstest_viewport.py- Terminal dimensionsAll existing tests pass.
Pull request closed