Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
= rubygems-test - commands and facilities for automated rubygems testing and reporting. == For users This installs three major features: * a 'gem test' command. * the ability to test your gems on installation, and uninstall them if they fail testing. * A facility to upload your test results to rubygems.org (coming soon, see http://github.com/bluepojo/gem-testers) === .gemrc You can insert several things in your .gemrc to make things simpler. These all live in the 'test_options' subsection, e.g.: test_options: auto_test_on_install: true test_on_install: true install_development_dependencies: true test_development_dependencies: false upload_results: false force_install: false force_uninstall_on_failure: false All options are *false* by default. For some of them, if the value is unknown or +false+, you will be prompted when it is required for testing. The options: auto_test_on_install:: runs the unit tests when 'gem install' is invoked. test_on_install:: offer to test on install in general. 'auto_test_on_install' overrides this. install_development_dependencies:: automatically install the development dependencies when testing. This is recommended. test_development_dependencies:: recursively test dev dependencies installed by rubygems-test. This can significantly increase the time it takes to install a gem. upload_results:: upload results to http://gem-testers.org. upload_service_url:: Set to a URL, it will upload to that service instead. force_install:: always install, even on test failures. force_uninstall_on_failure:: force uninstall when tests fail. == For gem developers Want your gem to be testable? * Create (and add to your files section in your specification!) a '.gemtest' empty file. This is what signals the rubygems-test engine to process your gem as testable. * Ensure 'rake test' works and doesn't wipe out filesystems, databases, etc. Move those tests to another task. * Be sure to include your Rakefile in your gem, along with your tests. * Be sure to note any development dependencies that will be required for executing your rakefile and your tests in your gemspec. They will be installed as a part of the testing process. == Note on Patches/Pull Requests * Fork the project. * Make your feature addition or bug fix. * Add tests for it. This is important so I don't break it in a future version unintentionally. * Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull) * Send me a pull request. Bonus points for topic branches. == Copyright Copyright (c) 2010 Erik Hollensbe and Josiah Kiehl. See LICENSE for details.