create_valid

Using with shoulda

‘create_valid` supports shoulda. One caveat is that to use create_valid’s magic methods from within a setup block one must first open a context.

# Wrong
class MyTest < ActiveSupport::TestCase
  setup do
    @user = build_valid_user # THIS WILL NOT WORK
  end

  should "be invalid without a name" do
    @user.name = ''
    assert !@user.valid?
  end
end

# Correct
class MyTest < ActiveSupport::TestCase
  context "a valid user" do
    setup do
      @user = build_valid_user
    end

    should "be invalid without a name" do
      @user.name = ''
      assert !@user.valid?
    end
  end
end

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2010 Jason Frame. See LICENSE for details.