Ruby Golf

Requirements

  • Ruby 2.1
  • RSpec 2.14

Setup

  • clone the repo
  • bundle
  • read spec/golf_spec.rb
  • start coding...

How to play

Ruby Golf is a game whereby the player is required to solve a number of problems (holes) in the fewest characters possible. The course consists of nine holes that you must implement. The holes are static methods that need to written for the Golf class (lib/golf.rb). The requirements for these methods is specified by a set of RSpec examples for each hole (spec/golf_spec.rb). To run the specs, simply run:

rake

The first time you run this, all tests will fail. The aim is to get all test to pass. Building will also report the number of characters you took to complete the course. The fewer characters you use, the better.

  • The winning team must have completed all holes (with all tests passing).
  • If more than one team completes all holes, the winner is the team with fewest characters in the Golf class.
  • Teams will then be ranked by number of holes completed.

Example - course complete

rubygolf git:(master) ✗ rake
...........................

Finished in 0.00462 seconds
27 examples, 0 failures
-----------------------------------------------
| Congratulations, you've completed the course.
| Total characters: 522
-----------------------------------------------

Rules

  • Whitespace isn't counted
  • No requires, includes, backticks etc. Use only the ruby standard library.
  • Metaprogramming is allowed (for the Golf class only)
  • The only file you are allowed to modify is lib/golf.rb
  • No hard-coding return values!
  • If in doubt, ask.