Sha256: 7643feef8581011969a87ec0d92ecbddaaf818dc8aaffa1541608196ac88b5dc
Contents?: true
Size: 1.73 KB
Versions: 1
Compression:
Stored size: 1.73 KB
Contents
require 'spec_helper' describe AktionTestRails::Matchers::FactoryGirl::Validation do include described_class include AktionTestRails::Support::Rails::ModelBuilder after(:each) do FactoryGirl.factories.clear end it "accepts a valid factory" do define_model :user, :name => :string FactoryGirl.define do factory :user do name "Name" end end User.new.should have_valid_factory(:user) end it 'provides a description for one liners' do have_valid_factory(:user).description.should == "has a valid factory named :user" end context "when the factory does not exist" do before(:each) { define_model :user } it "does not accept the factory" do User.new.should_not have_valid_factory(:user) end it "says that the factory does not exist" do matcher = have_valid_factory(:user).tap{|m| m.matches?(User.new)} matcher.failure_message.should == <<-MSG.strip_heredoc Expected :user to be a valid factory. No factory by the name :user found MSG end end context 'when the factory has validation errors' do before(:each) do define_model :user, :name => :string do validates_presence_of :name end FactoryGirl.define do factory :user do name nil end end end it "does not accept the factory" do User.new.should_not have_valid_factory(:user) end it "should detail validation errors with the factory" do matcher = have_valid_factory(:user).tap{|m| m.matches?(User.new)} matcher.failure_message.should == <<-MSG.strip_heredoc Expected :user to be a valid factory. Failed Validations: Name can't be blank MSG end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
aktion_test_rails-0.3.0 | spec/matchers/factory_girl/validation_spec.rb |