Sha256: 05d0761578d00af2701980506f7f8bfa503154b38baf628de60617d97fbd2acf

Contents?: true

Size: 997 Bytes

Versions: 16

Compression:

Stored size: 997 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
      expect(subject.user_id).to eq 1
    end
  end

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

    it "assigns attributes correctly" do
      expect(subject.name).to eq "John Doe"
      expect(subject.age).to eq 20
    end
  end
end

Version data entries

16 entries across 13 versions & 5 rubygems

Version Path
sc_core-0.0.7 test/dummy/vendor/bundle/ruby/2.2.0/gems/factory_girl-4.5.0/spec/acceptance/attribute_aliases_spec.rb
solidus_backend-1.0.0.pre3 vendor/bundle/gems/factory_girl-4.5.0/spec/acceptance/attribute_aliases_spec.rb
solidus_backend-1.0.0.pre2 vendor/bundle/gems/factory_girl-4.5.0/spec/acceptance/attribute_aliases_spec.rb
solidus_backend-1.0.0.pre vendor/bundle/gems/factory_girl-4.5.0/spec/acceptance/attribute_aliases_spec.rb
apl-library-0.0.90 vendor/bundle/ruby/1.9.1/gems/factory_girl-4.4.0/spec/acceptance/attribute_aliases_spec.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/1.9.1/gems/factory_girl-4.4.0/spec/acceptance/attribute_aliases_spec.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/2.1.0/gems/factory_girl-4.4.0/spec/acceptance/attribute_aliases_spec.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/factory_girl-4.4.0/spec/acceptance/attribute_aliases_spec.rb
factory_girl-4.5.0 spec/acceptance/attribute_aliases_spec.rb
factory_girl-4.4.0 spec/acceptance/attribute_aliases_spec.rb
factory_girl-4.3.0 spec/acceptance/attribute_aliases_spec.rb
challah-1.0.0 vendor/bundle/gems/factory_girl-4.2.0/spec/acceptance/attribute_aliases_spec.rb
challah-1.0.0.beta3 vendor/bundle/gems/factory_girl-4.2.0/spec/acceptance/attribute_aliases_spec.rb
challah-1.0.0.beta2 vendor/bundle/gems/factory_girl-4.2.0/spec/acceptance/attribute_aliases_spec.rb
challah-1.0.0.beta vendor/bundle/gems/factory_girl-4.2.0/spec/acceptance/attribute_aliases_spec.rb
factory_girl-4.2.0 spec/acceptance/attribute_aliases_spec.rb