Contributing
Issues
Found an issue? Missing a feature or something else? We look forward to receive your feedback.
For bug reports please make sure that you
- clearly describe your problem
- provide us something that allows us to reproduce the problem (a minimal failing example would be awesome)
Pull Requests
We love pull requests. Here's a quick guide:
Fork the repo.
Run the tests. We only take pull requests with passing tests, and it's great to know that you have a clean state.
Add a test for your change. Only refactoring and documentation changes require no new tests. If you are adding functionality or fixing a bug, we need a test to avoid regressions in future releases.
Make the test pass.
Push to your fork and submit a pull request.
At this point you're waiting on us. We'll give you feedback asap.
Note: If you have any problems with a test case don't hesitate to ask us. Just submit your PR and we'll find a solution together :)
How to run tests
Make sure you have all dependencies installed
$ npm install
Run the tests with:
$ npm run test
How to test against your project
Wanna test your changes against your real world project? No Problem!
Let's use npm link
to symlink the fork into your project.
switch to the root of this project
make sure you have all dependencies installed
$ npm install
run first step for npm link
$ npm link
switch to your real world project
and execute the second step for npm link
$ npm link mocha-webpack
You need to configure loader resolution in your webpack config, like below
var path = require('path'); module.exports = { // .. // npm link mocha-webpack hack resolveLoader: { root: [ // __dirname is the root of your project, you may need to adjust the path path.join(__dirname, "node_modules") ] }; // .. };
Then you are almost ready to go. You just have to build this project initially and whenever you make code changes.
$ npm run build
Syntax rules
Please pay attention on the following syntax rules:
- Basic coding styles are defined within the .editorconfig file.
- ESLint automatically checks the code style after tests or manually via
npm run lint
. - Follow the conventions used in the source already.