Contributions to the Karma Test Explorer are welcome, particularly in the core areas of focus mentioned in the Why this Extension section. Other particular areas, among others, include:
- Migrating to the native VS Code test API
- Enhancing the level of Angular and Mocha support
- Adding support for code coverage
- Increasing test coverage
- Any general updates that make contributing easier
The Karma Test Explorer project is pre-configured for development in a Dev Container, making it quick and easy to get setup and contributing to the project.
- Fork and clone the project repo and open it in VS Code
- Select the option to Reopen in Container, which will build the container if not already previously done, and install all project dependencices
- Create a branch with a short descriptive name for the new or existing bug or feature for which you wish to contribute, naming feature branches with a feature prefix (eg.
feature/my-feature-description
) and bugfixes with a bugfix prefix (eg.bugfix/bug-description
) - Code your contributions in the branch, ensuring to include:
- Unit tests that adequately cover, at a minimum, the functionality for the feature or bugfix being contributed
- Any new documentation and updates to existing documentation related to the feature or bugfix being contributed
- Create a pull request with your proposed contribution, ensuring that it is linked to the GitHub issue for the related bug or feature
- In the pull request description, include a summary of the changes in the pull request
- Ensure the pull request passes the CI build and all other CI checks
For linting and building the code, and running unit tests, you can use the following:
Command | Action |
---|---|
npm run build |
Build the project |
npm run test |
Run the unit tests for the project. Jest is used for unit testing |
npm run lint |
Run linting on the project files. ESLint is used for linting |
npm run validate |
Validate your changes before creating a pull request. This runs all build actions |