this should greatly reduce the complexity of the l10n code and build pipeline and eliminate the most common error seen in sentry logs (no translate function)
1.2 KiB
Tests
To run all the tests use npm test. This will run the tests and produce a code coverage report at coverage/index.html. The full test suite is run as a hook on each git push. Mocha is our preferred test runner.
Frontend
Unit tests reside in test/frontend/tests.
Frontend tests can be ran in the browser by running npm start and then browsing to http://localhost:8080/test. Doing it this way will watch for changes and rerun the suite automatically.
You can also run them in headless Chrome by using npm run test:frontend. The results will be printed to the console.
Backend
Unit tests reside in test/backend
Backend test can be run with npm run test:backend. Sinon and proxyquire are used for mocking.
Integration
Integration tests include UI tests that run with Selenium.
The preferred way to run these locally is with npm run test-integration which requires docker. To watch the tests connect with VNC. On mac enter vnc://localhost:5900 in Safari and use the password secret to connect. For info on debugging a test see the wdio debug docs.