Refactors the flask server and other audio/video streaming infrastructure into a new module. #440
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This required jumping through a lot of hoops because Flask is not
object-oriented, and is intended to be implemented at a module level, which
makes it completely un-testable. I opted for a static class implementation,
which still provides some encapsulation and can be tested with the addition of
a reset function.
That said, a better option would be to switch over to something like
https://github.com/pallets-eco/flask-classful , which provides a
properly-encapsulated Flask implementation. Ideally, this will behave more like
Java servlets, which are usually pretty straightforward to test.
Tested
On Debian Linux
This is part of #434