Reason is that we have some quite complex logic both in the JS code (especially webrtc code) and also some Vues like the CallView has a complex set of flags and view switching based on how many screens, videos, etc are available and what mode the user has selected.
For the CallView, ideally we should simplify/refactor it first as I believe it should be possible to achieve the same with simpler code.
For Vue components, see https://vuejs.org/v2/guide/testing.html For the plain JS code, we could use Jasmine like in the server.
Reason is that we have some quite complex logic both in the JS code (especially webrtc code) and also some Vues like the CallView has a complex set of flags and view switching based on how many screens, videos, etc are available and what mode the user has selected.
For the CallView, ideally we should simplify/refactor it first as I believe it should be possible to achieve the same with simpler code.