Permalink
Commits on Jan 18, 2010
  1. Fixed Shoulda installation instruction

    karmi committed Aug 24, 2009
    It's Shoulda, not shoulda. Thanks @gunnie.
  2. Added README

    karmi committed Aug 22, 2009
  3. [STEP 11] Implementing logic for translating numbers in range from 20…

    karmi committed Aug 22, 2009
    … to 99. FINAL STEP
    
    * The concrete Ruby code is _not_ important, here
    * The implementation could differ, use different approaches, etc
    * The code is written so it's neither too long or too short and is (hopefully) readable
  4. [STEP 10] Added specification for translating random numbers ranging …

    karmi committed Aug 22, 2009
    …from 20 to 999
    
    * Obviously, we are not writing specs for every number in that range
  5. [STEP 9] Refactoring the code from Fixnum do module, which gets included

    karmi committed Aug 22, 2009
    * Our tests _stay the same_, we just require 'fixnum' now
    * When our tests pass, our code should behave exactly like before the refactoring
  6. [STEP 7] Added specification for translating numbers 10 to 19

    karmi committed Aug 22, 2009
    * The tests are RED ...
    * ... and implementation goes into the next step
  7. [STEP 5] Added specification for translating numbers 0 to 9

    karmi committed Aug 22, 2009
    * And the tests are RED
  8. [STEP 4] Implementing "logic" to satisfy the tests

    karmi committed Aug 22, 2009
    * The "logic" is of course very naive, being simple if .. else
    * But is enlightens a very important point: implement only specs in tests; walk only as far as you see
    * Prevents over-engineering and "You Ain't Gonna Need It" syndrome
  9. [STEP 3] Adding specification for number 2 in tests and using Shoulda…

    karmi committed Aug 22, 2009
    … vocabulary
    
    * Using Shoulda [http://thoughtbot.com/projects/shoulda] vocabulary for better test readability
    * Adding test for number 2, forcing us to implement some logic
  10. [STEP 2] Implementing the logic to satisfy test

    karmi committed Aug 22, 2009
    * We care about number 1, now
    * Obviously, next step is proper specification in tests
    * Which also means using better vocabulary then bare Test::Unit
  11. [STEP 1] Specifying API for number 1

    karmi committed Aug 22, 2009
    * We don't care about implementation now
    * We care about the API
  12. Adding the Rakefile for the tutorial

    karmi committed Aug 22, 2009
    * Use command `rake` on your command line to run the tests
    * Use command `rake start` to download step branches and start in step one
    * Use command `rake step` to switch to next step of tutorial (or back to step one)
    * Use command `rake master` to return to master branch
Commits on Aug 22, 2009