WIP: Use Karma test runner instead of teaspoon
What does this MR do?
- Replace Teaspoon test runner for JavaScript tests by Karma.
- Split fixture generation from test execution to ensure unit testing.
- Use Mincer for processing Sprockets.
Are there points in the code the reviewer needs to double check?
Is there a better way to ensure Ruby and JavaScript are using the same libraries / library versions?
Why was this MR needed?
- Teaspoon raised several problems when it came to test coverage.
- Running JavaScript unit tests required a running server.
What are the relevant issue numbers?
fixes #20836 (closed), #20757 (closed)
TODOs
-
CHANGELOG entry -
Documentation created/updated -
fix hamlit problems with u2f fixtures -
fix failing tests -
find out why includeAllSources
is ignored (https://github.com/karma-runner/karma-coverage/blob/v1.1.1/docs/configuration.md#includeallsources) -
find out how to handle .js.erb
when copying libraries