Join GitHub today
An attempt to replace the testing facility in rubygems via a test plugin.
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.