You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. ## Running the mustache.js Test Suite
  2. The mustache.js test suite uses the [RSpec](http://rspec.info/) testing
  3. framework. In order to run the tests you'll need to install [Ruby](http://ruby-lang.org/)
  4. as well as the `rake`, `rspec` (>=2), and `json` [RubyGems](http://rubygems.org/).
  5. ### How to install Ruby and the required gems from source
  6. Make sure you have the required tools to compile it:
  7. $ apt-get install build-essential libssl-dev libreadline5-dev zlib1g-dev
  8. Download and extract the Ruby source, and install it:
  9. $ wget ftp://ftp.ruby-lang.org/pub/ruby/stable-snapshot.tar.gz
  10. $ tar xvzf stable-snapshot.tar.gz
  11. $ cd ruby
  12. $ ./configure && make && make install
  13. Download and extract RubyGems, and install it:
  14. $ wget http://production.cf.rubygems.org/rubygems/rubygems-1.8.12.tgz
  15. $ tar xzvf rubygems-1.8.12.tgz
  16. $ cd rubygems-1.8.12
  17. $ ruby setup.rb
  18. If you want to update RubyGems:
  19. $ gem update --system
  20. Install the required gems:
  21. $ gem install rake rspec json
  22. That's it!
  23. ### How to run the tests
  24. The mustache.js test suite currently uses 4 different JavaScript runtime engines
  25. to maximize portability across platforms and browsers. They are:
  26. * node
  27. * SpiderMonkey (Mozilla, Firefox)
  28. * JavaScriptCore (WebKit, Safari)
  29. * Rhino (Mozilla, Java)
  30. When the test suite runs it will automatically determine which platforms are
  31. available on your machine and run on all of them. The suite must run on at least
  32. one platform in order to succeed.
  33. Once you have at least one JavaScript platform installed, you can run the test
  34. suite with the following command:
  35. $ rake
  36. ### How to create a test
  37. All test files live in the spec/_files directory. To create a new test:
  38. * Create a template file `somename.mustache`
  39. * Create a javascript file with data and functions `somename.js`
  40. * Create a file the expected result `somename.txt`