Sha256: 60f256cee73e1e68d223445a698761913336ce4b642347c4f611d410e73ada19

Contents?: true

Size: 1.7 KB

Versions: 3

Compression:

Stored size: 1.7 KB

Contents

FactoryGirl.define do
	factory :account do |f|
		f.name "Account Name Here"
	end

	factory :account_with_customer_dynamic_columns, parent: :account do
		before(:create, :build) do |account|
			# Setup dynamic fields for Customer under this account
			account.activerecord_dynamic_columns.build(:dynamic_type => "Customer", :key => "first_name", :data_type => "string")
			account.activerecord_dynamic_columns.build(:dynamic_type => "Customer", :key => "last_name", :data_type => "string")
			account.activerecord_dynamic_columns.build(:dynamic_type => "Customer", :key => "email", :data_type => "string")
			account.activerecord_dynamic_columns.build(:dynamic_type => "Customer", :key => "trusted", :data_type => "boolean")
			account.activerecord_dynamic_columns.build(:dynamic_type => "Customer", :key => "last_contacted", :data_type => "datetime")
			account.activerecord_dynamic_columns.build(:dynamic_type => "Customer", :key => "total_purchases", :data_type => "integer")
			account.activerecord_dynamic_columns.build(:dynamic_type => "Customer", :key => "tags", :data_type => "string", :multiple => true)
			account.activerecord_dynamic_columns.build(:dynamic_type => "Customer", :key => "address", :data_type => "model", :class_name => "CustomerAddress", :column_name => "name")
			account.activerecord_dynamic_columns.build(:dynamic_type => "Customer", :key => "products", :data_type => "model", :class_name => "Product", :column_name => "name", :multiple => true)
		end
	end

	factory :account_with_product_dynamic_columns, parent: :account do
		before(:create, :build) do |account|
			# Product fields
			account.activerecord_dynamic_columns.build(:dynamic_type => "Product", :key => "rarity", :data_type => "string")
		end
	end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
has_dynamic_columns-0.3.10 spec/factories/account.rb
has_dynamic_columns-0.3.9 spec/factories/account.rb
has_dynamic_columns-0.3.8 spec/factories/account.rb