First of all, thank you for contributing, you are awesome!
Here are a few rules to follow in order to ease code reviews, and discussions before maintainers accept and merge your work:
- You MUST follow the PSR-1 and PSR-2 recommendations. Use the PHP-CS-Fixer tool to fix the syntax of your code automatically.
- You MUST run the test suite.
- You MUST write (or update) unit tests.
- You SHOULD write documentation.
Please, write commit messages that make sense, and rebase your branch before submitting your Pull Request.
One may ask you to squash your
commits
too. This is used to "clean" your Pull Request before merging it (we don't want
commits such as fix tests
, fix 2
, fix 3
, etc.).
Also, while creating your Pull Request on GitHub, you MUST write a description which gives the context and/or explains why you are creating it.
Thank you!
Before running the test suite, execute the following Composer command to install the dependencies used by the bundle:
$ composer update
Then, execute the tests executing:
$ ./phpunit
First, install PhantomJS (see the website for further details or simply use your favourite package manager) and the development dependencies using:
$ cd Resources
$ npm install
then run the JS test suite with:
$ npm run test
Because the current test suite runs against the built javascript a build is automatically run first (see 'Compiling the JavaScript files' below for further details). You can explicitly run only the test suite with:
$ phantomjs js/run_jsunit.js js/router_test.html
Alternatively you can open Resources/js/router_test.html
in your browser which
runs the same test suite with a graphical output.
NOTE
We already provide a compiled version of the JavaScript; this section is only relevant if you want to make changes to this script.
This project is using Gulp to compile JavaScript files. In order to use Gulp you must install both node and npm.
If you are not familiar with using Gulp, it is recommended that you review this An Introduction to Gulp.js tutorial which will guide you through the process of getting node and npm installed.
Once you have node and npm installed:
$ cd Resources
$ npm install
Then to perform a build
$ npm run build