public
Description: Automated jQuery tests with QUnit
Homepage:
Clone URL: git://github.com/jodosha/hanoi.git
hanoi /
name age message
file MIT-LICENSE Tue Jun 09 05:29:40 -0700 2009 MIT-LICENSE [jodosha]
file README.textile Tue Jun 09 06:20:40 -0700 2009 Readme formatting [jodosha]
file Rakefile Mon Jun 08 07:02:45 -0700 2009 initial import [jodosha]
directory bin/ Tue Jun 09 06:29:25 -0700 2009 Prepare for v0.0.1 [jodosha]
file hanoi.gemspec Tue Jun 09 06:29:25 -0700 2009 Prepare for v0.0.1 [jodosha]
directory lib/ Sat Oct 31 11:28:42 -0700 2009 TestCase#target should consider both _test and ... [jodosha]
directory spec/ Mon Jun 08 08:12:04 -0700 2009 Added Opera support [jodosha]
directory templates/ Tue Jun 09 05:51:48 -0700 2009 README.textile [jodosha]
README.textile

Automated jQuery tests with QUnit

Installation

(sudo) gem install jodosha-hanoi -s http://gems.github.com

Crash Course

hanoi # prepare the target directory rake test:js # run the tests

How To Use

Prepare the target directory, you can use one of the following options:

hanoi hanoi . hanoi /path/to/project

You need a valid Rake installation to run your tests:

rake test:js

You can specify to run the test against one or more browsers:

rake test:js BROWSERS=firefox,ie,safari

You can specify to run only certain tests:

rake test:js TESTS=path/to/first_test.js,path/to/second_test.js

You can combine both BROWSERS and TESTS configurations.

Structure

The hanoi executable will create the following structure:

Rakefile test/ javascript/ assets/ jquery.js testrunner.js testsuite.css example_test.js fixtures/ example_fixtures.html templates/ test_case.erb
  • Rakefile creates a fresh rakefile, you have to edit it according to your setup
  • test Hanoi creates it if missing, otherwise will choose between existing test or spec paths
  • javascript is the root directory of your tests
  • assets contains the jQuery and QUnit source file and a css.
    Place your assets in this directory, it’s mapped as root path /.
  • example_test.js is a sample of a real test case.
  • templates contains the template file for your tests. You shouldn’t edit it, if you don’t know the risk.
  • fixtures contains all the HTML fixtures, each file will be injected into the proper case.

By convention, your test/javascript folder should reflect the structure of your source directory,
appending the _test.js suffix to each test case and the _fixtures.html to each fixture file.

Example:

src/ directory_a/ directory_b/ file_3.js file_2.js file_1.js test/ javascript/ directory_a/ directory_b/ file_3_test.js file_2_test.js file_1_test.js fixtures/ directory_a/ directory_b/ file_3_fixtures.html file_1_fixtures.html

You have probably noticed that file_2_fixtures.html is missing, this because fixtures are optional.

Browsers & Platforms

Platforms:

  • MacOS
  • Windows
  • Linux

Browsers:

  • Firefox
  • Safari
  • Internet Explorer
  • Opera
  • Konqueror

Acknowledgements

The Ruby libraries of Hanoi are a customization of the jsblib.rb, courtesy of the Prototype team.

Hanoi runs a customized version of QUnit, courtesy of the jQuery team.

Repository

git clone git://github.com/jodosha/hanoi.git

Copyright

© 2009 Luca Guidi – http://lucaguidi.com, released under the MIT license