Skip to content

Latest commit

 

History

History
19 lines (10 loc) · 1.5 KB

CONTRIBUTING.md

File metadata and controls

19 lines (10 loc) · 1.5 KB

1. Use a feature branch

Feature branches make pull requests easier as GitHub will keep your pull request up-to-date when the feature branch changes. If you need to rebase to fix some things after creating your pull request, or if you end up having multiple pull requests open at the same time, having a pull request associated with a branch instead of master will make your job easier.

2. Run the test suite

jsonschema2pojo includes both unit and integration tests. The unit test coverage is not high, instead we rely on an exhaustive set of integration tests that cover all the code generation features using example schema documents.

To compile, unit test, package, and run the integration test suite (the typical full build), use:

mvn clean verify

3. Add integration tests

When contributing, you may often find unit tests (and TDD) helpful and you're free to add unit tests. If you're adding/amending code generation features then integration tests (end-to-end tests that use an example schema to generate and compile Java code) are essential. We can't merge pull requests unless they have integration tests, since without tests your feature could be lost in a future release.

4. Rebase and keep a clean log

Rebase against master often, if your pull request is stale it can't be merged. Rebase your commits into logical chunks, without errors (multiple commits are okay, but squash minor commits that fix errors in earlier commits). Force-push to your feature branch after you have rebased.