JPOX
JPOX
 Project  |  Ver 1.1  |  Ver 1.2  |  JDO  |  JPA  |  Guides  |  Tools
1.2 | Persistence | JDO ORM | JPA ORM | Runtime | JDO Runtime | JPA Runtime | Extensions | Developer
Development
Testing
JPOX 1.2 : Development

JPOX uses Test Driven Development (TDD). It has the following tests available

  • test.jdo.general : 300+ tests
  • test.jdo.datastore : 650+ tests
  • test.jdo.application : 700+ tests
  • test.jdo.spatial : 200+ tests
  • test.jdo.jta : 6 tests
  • test.jdo.java5 : 40 tests
  • test.jdo.db4o : 25+ tests
  • test.jpa.general : 100 tests
  • JDO2 TCK : ~1550 tests
  • JPA1 TCK : ~435 tests

Once you have JPOX commit rights (see Forum), the development process should be as below

  1. Identify Issue to work on. Raise a JIRA if it doesn't yet exist, and allocate to yourself
  2. Develop code, unit tests (as appropriate), and documentation for the issue. JPOX is developed using JDK1.5+ but has to be runnable on JDK1.3+.
  3. Run all JPOX unit tests and JDO2 TCK, and when all pass to the same level as before then you can check your code into SVN
  4. Broken unit tests or JDO TCK tests MUST BE FIXED ASAP. Others are using SVN trunk too and if you break either the build or the tests then it means they often cannot work effectively. Breakage of unit tests or JDO TCK tests mean that your changes can be rolled back
  5. Issues that involve many changes should be split, where appropriate, into smaller steps so that you can still pass point 3 above with each check in
  6. Where changes are significant and you cannot split them into smaller check-ins (that pass the tests) should be checked in to the sandbox area (JPOX/workspace/{name}/, and when complete they should be merged into main SVN If help is needed at this point then other developers should help in merging large changes
  7. All check-ins should have a prefix in the description like [CORE-4251] for the issue being worked on. Then they will be indexed by JIRA and so we can track changes.
  8. Mark the JIRA issue as "Resolved" for the next release.

Please abide by these rules.