Jump to: navigation, search

JFace Data Binding/How to Contribute

< JFace Data Binding
Revision as of 21:42, 23 August 2007 by Bradleyjames.gmail.com (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Contributing Code

Whether you're wanting to fix a typo in javadoc or to implement the next whiz bang feature of JDB you'll need to know a few things before you contribute code.

Checking out the Projects

The project is comprised of the following plug-ins.

  • org.eclipse.core.databinding
  • org.eclipse.core.databinding.beans
  • org.eclipse.jface.databinding
  • org.eclipse.jface.databinding.examples
  • org.eclipse.jface.tests.databinding

You can check these out from CVS manually or with a Project Set File. You can import the file into Eclipse via File->Import, Team->Team Project Set. This will check out the necessary projects into your workspace. We provide sets for committers and contributors and for HEAD and maintenance branches.

Unit Testing

Testing is imperative to the health of the project. We have a significant amount of tests. The quantity of tests will keep growing as more functionality is added to the library. If you are contributing a fix or writing an enhancement it's a requirement that tests are written. If you don't write them a committer will have to and that could slow down the contribution process.

There are a couple of things that you should know about our testing process:

  • All tests are included in org.eclipse.jface.tests.databinding.
  • If looking for tests for a specific class look for a class named {THECLASS}Test.java (e.g. UpdateStrategy.java -> UpdateStrategyTest.java).
  • To run all tests open the Run Configuration dialog (Run->Open Run Dialog...). Under JUnit Plug-in Test will reside a "JFace-Data Binding Test Suite" (this is contributed by org.eclipse.jface.tests.databinding). When invoked this will run all tests. Before you contribute code you should always run the test suite to ensure that your changes didn't break anything, or at least anything that is being tested for.
  • If you create a new TestCase make sure to add it to BindingTestSuite. Your TestCase will then be ran as part of the JFace-Data Binding Test Suite.
  • If you want to make a good impression write tests. This goes for any project but especially JDB.

The Build

The Eclipse build is a bit of a mystery to newcomers. But rest assured that if you break something everyone will know about it and we will laugh at you (not really but we might tease you). If you do one thing it should be to sign up for the platform-releng-dev mailing list. You'll receive emails when builds complete and when build and test failures occur. It's always good to pay extra special attention on the mornings after you make a commit or someone makes a commit on your behalf. The normal reaction to "breaking the build" is to log a bug, notify the platform-releng-dev list about it so that others can gauge the quality of the build, and then fix the bug. If your mail client allows it it might be a good idea to setup a filter to flag anything with "databinding" in the message from platform-releng-dev. This will help filter out the signal from the noise.