$ 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](mailto:email@example.com rhomobile) or [hop on IRC](http://webchat.freenode.net/?channels=rhomobile) to chat with other Rhodes developers.
## Contributing your Patch
Now that you're environment is ready, make your 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](http://groups.google.com/group/rhomobile)
That's it! We recommend following [these ruby style guidelines](http://github.com/chneukirchen/styleguide/blob/master/RUBY-STYLE) when coding.
If you are interested us using your patch to Rhodes you will need to submit a [contribution agreement](http://rhomobile.com/community/contributing/) 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](http://rhodocs.rhohub.com/rhodes/build)), 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.