SeanLuckett/StringCounter_kata — pull request #4 by anthonynavarre (2012-02-12 18:18:13+00:00)
Title: This time, a refactor exercise

I changed your expectation to expect a simple `ArgumentError` instead of a custom class. We should always reach for the simplest tool and only expand upon it when we can convince ourselves that we truly need the extra features. If there's only 1 nail, use a hammer, not a nail gun & air compressor.

Also note that my second commit, I use [shared example groups](http://blog.davidchelimsky.net/2010/11/07/specifying-mixins-with-shared-example-groups-in-rspec-2/). My advice is to use these judiciously - you'll find that they can DRY up your tests quite a bit, but can also make them less clear.

With this pull request, I'm breaking the tradition of red/green/refactor and leaving the refactor up to you. That's because this step is, in my opinion, the most interesting refactor. And I've left some very ugly code for you to work with, so there should be a wide range of refactoring opportunities here.

PONG.