Newer
Older
# Copyright (c) 2010-2011, Diaspora In This file is
# licensed under the Affero General Public License version 3 or late See
Daniel Vincent Grippi
a validé
#For Guidance
#http://github.com/thoughtbot/factory_girl
# http://railscasts.com/episodes/158-factories-not-fixtures
FactoryGirl.define do
factory :profile do
sequence(:first_name) { |n| "Robert#{n}#{r_str}" }
sequence(:last_name) { |n| "Grimm#{n}#{r_str}" }
bio "I am a cat lover and I love to run"
gender "robot"
location "Earth"
birthday Date.today
end
factory :profile_with_image_url, :parent => :profile do
image_url "http://example.com/image.jpg"
image_url_medium "http://example.com/image_mid.jpg"
image_url_small "http://example.com/image_small.jpg"
Raphael
a validé
end
factory :person do
sequence(:diaspora_handle) { |n| "bob-person-#{n}#{r_str}@example.net" }
serialized_public_key OpenSSL::PKey::RSA.generate(1024).public_key.export
after(:build) do |person|
person.profile = FactoryGirl.build(:profile, :person => person) unless person.profile.first_name.present?
person.profile.save
end
Raphael
a validé
end
danielgrippi
a validé
factory :account_deletion do
delete.diaspora_handle = delete.person.diaspora_handle
end
danielgrippi
a validé
factory :searchable_person, :parent => :person do
after(:build) do |person|
person.profile = FactoryGirl.build(:profile, :person => person, :searchable => true)
Sarah Mei
a validé
end
factory :like do
association :author, :factory => :person
association :target, :factory => :status_message
end
Sarah Mei
a validé
factory :user do
getting_started false
sequence(:username) { |n| "bob#{n}#{r_str}" }
sequence(:email) { |n| "bob#{n}#{r_str}@pivotallabs.com" }
password "bluepin7"
password_confirmation { |u| u.password }
serialized_private_key OpenSSL::PKey::RSA.generate(1024).export
after(:build) do |u|
u.person = FactoryGirl.build(:person, :profile => FactoryGirl.build(:profile),
:owner_id => u.id,
:serialized_public_key => u.encryption_key.public_key.export,
:diaspora_handle => "#{u.username}#{User.diaspora_id_host}")
end
u.person.save
u.person.profile.save
end
Raphael
a validé
end
factory :user_with_aspect, :parent => :user do
after(:create) { |u| FactoryGirl.create(:aspect, :user => u) }
factory :aspect do
name "generic"
factory(:status_message) do
sequence(:text) { |n| "jimmy's #{n} whales" }
association :author, :factory => :person
sm.diaspora_handle = sm.author.diaspora_handle
end
factory(:status_message_with_poll, :parent => :status_message) do
after(:build) do |sm|
FactoryGirl.create(:poll, :status_message => sm)
end
end
danielgrippi
a validé
factory(:status_message_with_photo, :parent => :status_message) do
sequence(:text) { |n| "There are #{n} ninjas in this photo." }
after(:build) do |sm|
FactoryGirl.create(:photo, :author => sm.author, :status_message => sm, :pending => false, :public => sm.public)
factory(:status_message_in_aspect, parent: :status_message) do
self.public false
after :build do |sm|
sm.author = FactoryGirl.create(:user_with_aspect).person
sm.aspects << sm.author.owner.aspects.first
end
end
factory(:poll) do
sequence(:question) { |n| "What do you think about #{n} ninjas?" }
after(:build) do |p|
p.poll_answers << FactoryGirl.build(:poll_answer)
p.poll_answers << FactoryGirl.build(:poll_answer)
end
end
factory(:poll_answer) do
sequence(:answer) { |n| "#{n} questionmarks" }
end
sequence(:random_string) {|n| SecureRandom.hex(10) }
association :author, :factory => :person
p.unprocessed_image.store! File.open(File.join(File.dirname(__FILE__), 'fixtures', 'button.png'))
p.update_remote_path
end
factory(:remote_photo, :parent => :photo) do
remote_photo_path 'https://photo.com/images/'
remote_photo_name 'kittehs.jpg'
association :author,:factory => :person
processed_image nil
unprocessed_image nil
end
Maxwell Salzberg
a validé
factory :reshare do
association(:root, :public => true, :factory => :status_message)
association(:author, :factory => :person)
end
factory :invitation do
service "email"
identifier "bob.smith@smith.com"
association :sender, :factory => :user_with_aspect
i.aspect = i.sender.aspects.first
end
danielgrippi
a validé
end
factory :invitation_code do
sequence(:token){|n| "sdfsdsf#{n}"}
association :user
count 0
end
factory :service do |service|
nickname "sirrobertking"
type "Services::Twitter"
sequence(:uid) { |token| "00000#{token}" }
sequence(:access_token) { |token| "12345#{token}" }
sequence(:access_secret) { |token| "98765#{token}" }
end
danielgrippi
a validé
factory :service_user do
sequence(:uid) { |id| "a#{id}"}
sequence(:name) { |num| "Rob Fergus the #{num.ordinalize}" }
association :service
photo_url "/assets/user/adams.jpg"
factory(:comment) do
sequence(:text) {|n| "#{n} cats"}
association(:author, :factory => :person)
association(:post, :factory => :status_message)
end
Raphael
a validé
factory(:notification) do
association :recipient, :factory => :user
association :target, :factory => :comment
type 'Notifications::AlsoCommented'
after(:build) do |note|
note.actors << FactoryGirl.build(:person)
Raphael
a validé
end
factory(:tag, :class => ActsAsTaggableOn::Tag) do
name "partytimeexcellent"
end
factory(:o_embed_cache) do
url "http://youtube.com/kittens"
data {{'data' => 'foo'}}
factory(:open_graph_cache) do
url "http://example.com/articles/123"
image "http://example.com/images/123.jpg"
title "Some article"
ob_type "article"
description "This is the article lead"
end
danielgrippi
a validé
factory(:tag_following) do
association(:tag, :factory => :tag)
association(:user, :factory => :user)
end
factory(:contact) do
association(:person, :factory => :person)
association(:user, :factory => :user)
end
factory(:mention) do
association(:person, :factory => :person)
association(:post, :factory => :status_message)
end
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
factory(:conversation) do
association(:author, factory: :person)
sequence(:subject) { |n| "conversation ##{n}" }
after(:build) do |c|
c.participants << c.author
end
end
factory(:conversation_with_message, parent: :conversation) do
after(:build) do |c|
msg = FactoryGirl.build(:message)
msg.conversation_id = c.id
c.participants << msg.author
msg.save
end
end
factory(:message) do
association(:author, factory: :person)
sequence(:text) { |n| "message text ##{n}" }
end
factory(:message_with_conversation, parent: :message) do
after(:build) do |msg|
c = FactoryGirl.build(:conversation)
c.participants << msg.author
msg.conversation_id = c.id
end
end
#templates
factory(:status_with_photo_backdrop, :parent => :status_message_with_photo)
factory(:photo_backdrop, :parent => :status_message_with_photo) do
text ""
end
factory(:note, :parent => :status_message) do
end
factory(:status, :parent => :status_message)