Fixing tests
Add instructions for installing PhantomJS on Ubuntu via npm
Configure Poltergeist for driving JavaScript tests (uses PhantomJS headless browser)
JS tests happen in a separate thread that doesn't share the db transactions usually used in tests, so dont use transactions for JS tests, use truncation db clean strategy.
Added poltergeist to Gemfile test group and cleaned up Gemfile a little
AJAX test now passing by flagging it as a JS-dependent test. Previously it failed as it was using Capybara+RackTest that isn't a JS-enabled testing environment. Now runs using Poltergeist+PhantomJS thanks to :js => true option.
Fixed all the features specs except the mark_items_complete spec
Trying to write specs for the mustdos_controller and the musdo model
Uncommented spec code
Add shoulda-matchers gem to simplify model testing
Test Mustdo<->User associations
Test Mustdo validations
TimeHelpers made available to specs (travel, travel_to, travel_back)
Test default_scope for Mustdo
Test coverage for Mustdo#days_left
Tidy up days_left test a little
Merged fixed-tests branch into creating-rspec-tests branch to resolve failing test. Can use JS tests in this branch too now.
Adding incomplete scope to Mustdo for simplifying controller spec
Changing MustdosController spec for index action
Explain why we're creating a completed mustdo for a more realistic test env in MustdosController spec