Testing Suite
In regards of #93 @torch2424 and I talked about working on tests for this project so we can always be sure everything works as intended even after something else in the system got updated.
We should compile a list of stuff we want to test, I've looked into both unit testing and functional testing in the past, which one would be the most applicable here? From my understanding, unit tests focusses on one function or method and functional testing focusses on the whole application, sort of an integration test.
Through stackoverflow I found this handy summary:
Unit Tests are written from a programmers perspective. They are made to ensure that a particular method (or a unit) of a class performs a set of specific tasks.
Functional Tests are written from the user's perspective. They ensure that the system is functioning as users are expecting it to.
So for this project, I just think we need unit tests.
I am a big fan of Mocha, and can use a fastify supertest solution
In terms of testing the Stream, we should create a mock for node-fluent-ffmpeg, and just use that to make sure the correct functions are called. And testing the string converter can be done with the standard unit tests.
API Tests can be done by just pinging the endpoints and verifying they return the right things