Description
The NApp has minimal testing, and the given testing is not run in a continuous integration pipeline.
Requirements
Testing
Testing should cover at least the AsyncScheduler and KafkaSendOperations classes, as well as the start(), handle_new_switch(), and shutdown() methods.
CI Pipeline
The GitHub Actions CI pipeline should run in all pushes and pull requests. If this is expanded to be a continuous deployment pipeline as well, that should only be run in main. What is run should include pytest and pylint, checking versions from python 3.9+