Sha256: fe73ee9ed396556bde056755363f71c883b7896211f308a15c975e1600aad680

Contents?: true

Size: 985 Bytes

Versions: 201

Compression:

Stored size: 985 Bytes

Contents

require 'spec_helper'

describe "attribute aliases" do
  before do
    define_model('User', name: :string, age: :integer)

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

    FactoryGirl.define do
      factory :user do
        factory :user_with_name do
          name "John Doe"
        end
      end

      factory :post do
        user
      end

      factory :post_with_named_user, class: Post do
        user factory: :user_with_name, age: 20
      end
    end
  end

  context "assigning an association by foreign key" do
    subject { FactoryGirl.build(:post, user_id: 1) }

    it "doesn't assign both an association and its foreign key" do
      subject.user_id.should == 1
    end
  end

  context "assigning an association by passing factory" do
    subject { FactoryGirl.create(:post_with_named_user).user }

    it "assigns attributes correctly" do
      subject.name.should == "John Doe"
      subject.age.should == 20
    end
  end
end

Version data entries

201 entries across 93 versions & 7 rubygems

Version Path
classiccms-0.7.5 vendor/bundle/gems/factory_girl-3.0.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.5 vendor/bundle/gems/factory_girl-3.2.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.5 vendor/bundle/gems/factory_girl-3.3.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.4 vendor/bundle/gems/factory_girl-3.0.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.4 vendor/bundle/gems/factory_girl-3.2.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.4 vendor/bundle/gems/factory_girl-3.3.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.3 vendor/bundle/gems/factory_girl-3.0.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.3 vendor/bundle/gems/factory_girl-3.3.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.3 vendor/bundle/gems/factory_girl-3.2.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.2 vendor/bundle/gems/factory_girl-3.3.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.2 vendor/bundle/gems/factory_girl-3.0.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.2 vendor/bundle/gems/factory_girl-3.2.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.1 vendor/bundle/gems/factory_girl-3.2.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.1 vendor/bundle/gems/factory_girl-3.0.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.1 vendor/bundle/gems/factory_girl-3.3.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.0 vendor/bundle/gems/factory_girl-3.3.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.0 vendor/bundle/gems/factory_girl-3.0.0/spec/acceptance/attribute_aliases_spec.rb
classiccms-0.7.0 vendor/bundle/gems/factory_girl-3.2.0/spec/acceptance/attribute_aliases_spec.rb
challah-1.0.0.beta vendor/bundle/gems/factory_girl-4.1.0/spec/acceptance/attribute_aliases_spec.rb
challah-0.9.1.beta.3 vendor/bundle/gems/factory_girl-4.1.0/spec/acceptance/attribute_aliases_spec.rb