Sha256: b9bd5dae106e8ddf90994272bc5235963916a9d06a8d8564376891e7b54ba319

Contents?: true

Size: 1.09 KB

Versions: 2

Compression:

Stored size: 1.09 KB

Contents

require 'spec_helper'

describe "a built instance" do
  include FactoryGirl::Syntax::Methods

  before do
    define_model('User')

    define_model('Post', :user_id => :integer) do
      belongs_to :user
    end

    FactoryGirl.define do
      factory :user

      factory :post do
        user
      end
    end
  end

  subject { build(:post) }

  it "isn't saved" do
    should be_new_record
  end

  it "assigns and saves associations" do
    subject.user.should be_kind_of(User)
    subject.user.should_not be_new_record
  end
end

describe "a built instance with :method => :build" do
  include FactoryGirl::Syntax::Methods

  before do
    define_model('User')

    define_model('Post', :user_id => :integer) do
      belongs_to :user
    end

    FactoryGirl.define do
      factory :user

      factory :post do
        association(:user, :method => :build)
      end
    end
  end

  subject { build(:post) }

  it "isn't saved" do
    should be_new_record
  end

  it "assigns but does not save associations" do
    subject.user.should be_kind_of(User)
    subject.user.should be_new_record
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
factory_girl-2.1.2 spec/acceptance/build_spec.rb
factory_girl-2.1.0 spec/acceptance/build_spec.rb