Switch branches/tags
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
64 lines (45 sloc) 3.68 KB
Want to add features to Rhodes? Found a bug that you want report or fix?
## Report Rhodes Issues
Please report bugs/features/enhancements to the [google group](
## Run Rhodes Specs
First run the rhodes specs to make sure your environment is up-to-date for development (currently the specs only run on OSX):
1. [Fork]( the [Rhodes repository](
2. Clone your new repo:
$ git clone git://<yourhandle>/rhodes.git
$ cd rhodes
$ bin/rhodes-setup
$ rake run:allspecs #=> runs rhodes framework_spec and phone_spec targets
If everything passes (pending specs are OK), then your environment is ready for development. If you have trouble installing a particular gem or the specs just won't run properly, please feel free to ping the [google group]( rhomobile) or [hop on IRC]( to chat with other Rhodes developers.
## Contributing your Patch
Now that you're environment is ready, make your changes!
1. Create a topic branch:
$ git checkout -b cool_new_feature
2. Write tests([example](
3. Make changes...
4. Add relevant documentation(RDoc, update the README if relevant)
5. Push to your branch:
$ git push origin cool_new_feature
6. Send a note to the [google group](
That's it! We recommend following [these ruby style guidelines]( when coding.
If you are interested us using your patch to Rhodes you will need to submit a [contribution agreement]( to us.
## Automated Tests
Rhodes includes automated tests that can (and should) be run periodically against the codebase if you're modifying the Rhodes framework itself.
### Install Rhodes
The automated tests are a part of the Rhodes project on GitHub. To obtain the Rhodes source code and access the automated tests, follow the instructions in the [Setup Rhodes Source Code](build#setting-up-rhodes-source-code) section. You will find two automated test sets under rhodes/spec/. One is called phone_spec, the other is framework_spec.
### Running Tests
Assuming you have already downloaded the necessary SDKs (instructions can be found [here](, all you need to do is execute the appropriate rake task. To execute the phone_spec, for example, you can do the following in Terminal:
$ cd rhodes/spec/phone_spec
$ rake run:platform:spec
Where platform is "android" to run it for Android, "iphone" for iPhone, "bb" for BlackBerry. As a shortcut, you can also execute any of the following supported tasks:
$ rake run:iphone:spec # Runs spec tests for the current directory
$ rake run:iphone:phone_spec # Runs spec tests for rhodes/spec/phone_spec
$ rake run:iphone:framework_spec # Runs spec tests for rhodes/spec/framework_spec
$ rake run:android:spec # Runs spec tests for the current directory
$ rake run:android:phone_spec # Runs spec tests for rhodes/spec/phone_spec
$ rake run:bb:spec # Runs spec tests for the current directory
$ rake run:bb:phone_spec # Runs spec tests for rhodes/spec/phone_spec
Rhomobile performs continuous testing of the framework_spec on iPhone and the phone_spec on iPhone and BlackBerry via a customized branch of the CIJoe project. Support for the Android phone_spec is currently functional but under development.