0.0
No commit activity in last 3 years
No release in over 3 years
I like using should_create and friends to make assertions about records coming and going in the database. Shoulda did, but doesn't any more. With this, it can again.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies
 Project Readme

shoulda_create¶ ↑

Restores should_create functionality to shoulda.

I like using should_create and friends to make assertions about records coming and going in the database.

Shoulda did, but doesn’t any more. With this, it can again.

Some ideological dispute, I guess. I complained to one of the thoughtbot guys, and he said “that’s the joy of open source, you can build your own”. Well, here it is.

Examples¶ ↑

context 'POST to :create' do
  setup { post :create, :email => 'bob@example.com', :name => 'Bob Dobbs' }
  # simple usage
  should_create :user

  # asserting records are neither created nor destroyed
  should_not_change_record_count_of :blog_posts

  # asserting a change in some state other than simple row count
  should_change("number of Bobs", :by => 1){ User.where("name ILIKE '%bob%'").count }

  # the subject can be a class rather than a symbol:
  should_create Audited::Adapters::ActiveRecord::Audit

  # ... or it can be a table name: (remember to pluralize)
  should_create 'audits'

  # the to can be a proc: (when using factories and ids are not known at context setup time)
  should_change('the user group', :to => lambda{ @group.id }){ @user.reload.group_id }
end

License¶ ↑

shoulda_create is released under the MIT license: