gitlabhq/spec/factories.rb

203 lines
4.1 KiB
Ruby
Raw Normal View History

FactoryGirl.define do
sequence :sentence, aliases: [:title, :content] do
Faker::Lorem.sentence
end
sequence :name, aliases: [:file_name] do
Faker::Name.name
end
sequence(:url) { Faker::Internet.uri('http') }
factory :user, aliases: [:author, :assignee, :owner, :creator] do
email { Faker::Internet.email }
name
2013-01-28 16:46:24 +01:00
sequence(:username) { |n| "#{Faker::Internet.user_name}#{n}" }
password "123456"
password_confirmation { password }
trait :admin do
admin true
end
factory :admin, traits: [:admin]
end
factory :project do
sequence(:name) { |n| "project#{n}" }
path { name.downcase.gsub(/\s/, '_') }
creator
end
2012-11-23 19:53:24 +01:00
factory :group do
2012-10-02 17:20:46 +02:00
sequence(:name) { |n| "group#{n}" }
2012-11-23 19:31:09 +01:00
path { name.downcase.gsub(/\s/, '_') }
2012-10-02 17:20:46 +02:00
owner
2012-11-23 19:53:24 +01:00
type 'Group'
end
2012-11-23 19:53:24 +01:00
factory :namespace do
sequence(:name) { |n| "namespace#{n}" }
2012-11-23 19:53:24 +01:00
path { name.downcase.gsub(/\s/, '_') }
owner
2012-10-02 17:20:46 +02:00
end
factory :users_project do
user
project
project_access { UsersProject::MASTER }
end
factory :issue do
title
author
project
trait :closed do
closed true
end
factory :closed_issue, traits: [:closed]
end
factory :merge_request do
title
author
project
source_branch "master"
target_branch "stable"
trait :closed do
closed true
end
# pick 3 commits "at random" (from bcf03b5d~3 to bcf03b5d)
trait :with_diffs do
2013-01-15 00:27:26 +01:00
target_branch "master" # pretend bcf03b5d~3
source_branch "stable" # pretend bcf03b5d
st_commits do
[Commit.new(project.repo.commit('bcf03b5d')),
Commit.new(project.repo.commit('bcf03b5d~1')),
Commit.new(project.repo.commit('bcf03b5d~2'))]
end
st_diffs do
project.repo.diff("bcf03b5d~3", "bcf03b5d")
end
end
factory :closed_merge_request, traits: [:closed]
factory :merge_request_with_diffs, traits: [:with_diffs]
end
factory :note do
project
note "Note"
2012-10-30 03:27:36 +01:00
author
factory :note_on_commit, traits: [:on_commit]
2013-01-02 21:31:48 +01:00
factory :note_on_commit_diff, traits: [:on_commit, :on_diff]
2012-10-30 03:27:36 +01:00
factory :note_on_issue, traits: [:on_issue], aliases: [:votable_note]
factory :note_on_merge_request, traits: [:on_merge_request]
2013-01-02 21:31:48 +01:00
factory :note_on_merge_request_diff, traits: [:on_merge_request, :on_diff]
2012-10-30 03:27:36 +01:00
trait :on_commit do
commit_id "bcf03b5de6c33f3869ef70d68cf06e679d1d7f9a"
2012-10-30 03:27:36 +01:00
noteable_type "Commit"
end
2013-01-02 21:31:48 +01:00
trait :on_diff do
2012-10-30 03:27:36 +01:00
line_code "0_184_184"
end
trait :on_merge_request do
noteable_id 1
noteable_type "MergeRequest"
end
trait :on_issue do
noteable_id 1
2012-10-30 03:27:36 +01:00
noteable_type "Issue"
end
end
factory :event do
2012-09-27 22:23:11 +02:00
factory :closed_issue_event do
project
2013-02-13 12:48:16 +01:00
action { Event::CLOSED }
2012-09-27 22:23:11 +02:00
target factory: :closed_issue
author factory: :user
end
end
factory :key do
title
2012-08-29 03:15:21 +02:00
key do
"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0="
2012-08-29 03:15:21 +02:00
end
factory :deploy_key do
project
end
factory :personal_key do
user
end
factory :key_with_a_space_in_the_middle do
key do
"ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa ++Oi7Qkr8prgHc4soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0="
end
end
factory :invalid_key do
key do
"ssh-rsa this_is_invalid_key=="
end
end
end
factory :milestone do
title
project
end
factory :system_hook do
url
end
factory :project_hook do
url
end
factory :wiki do
title
content
user
end
factory :snippet do
project
author
title
content
file_name
end
factory :protected_branch do
name
project
end
2012-11-19 19:24:05 +01:00
factory :service do
type ""
title "GitLab CI"
token "x56olispAND34ng"
project
end
factory :service_hook do
url
service
end
end