Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémy Coutable <remy@rymai.me>2019-02-18 19:45:38 +0300
committerRémy Coutable <remy@rymai.me>2019-02-18 19:50:27 +0300
commit9dca756976be018c54d12b3d0510326b9d98f7de (patch)
treef9dfaca6524484810b65a309a4d6310fcc4aae5a /spec/factories/import_states.rb
parentc78adba6d35d1ea1f04bf425eecafaf88a0e3b46 (diff)
Rename spec/factories/import_state.rb to spec/factories/import_states.rb
Signed-off-by: Rémy Coutable <remy@rymai.me>
Diffstat (limited to 'spec/factories/import_states.rb')
-rw-r--r--spec/factories/import_states.rb43
1 files changed, 43 insertions, 0 deletions
diff --git a/spec/factories/import_states.rb b/spec/factories/import_states.rb
new file mode 100644
index 00000000000..d6de26dccbc
--- /dev/null
+++ b/spec/factories/import_states.rb
@@ -0,0 +1,43 @@
+FactoryBot.define do
+ factory :import_state, class: ProjectImportState do
+ status :none
+ association :project, factory: :project
+
+ transient do
+ import_url { generate(:url) }
+ import_type nil
+ end
+
+ trait :repository do
+ association :project, factory: [:project, :repository]
+ end
+
+ trait :none do
+ status :none
+ end
+
+ trait :scheduled do
+ status :scheduled
+ end
+
+ trait :started do
+ status :started
+ end
+
+ trait :finished do
+ status :finished
+ end
+
+ trait :failed do
+ status :failed
+ end
+
+ after(:create) do |import_state, evaluator|
+ columns = {}
+ columns[:import_url] = evaluator.import_url unless evaluator.import_url.blank?
+ columns[:import_type] = evaluator.import_type unless evaluator.import_type.blank?
+
+ import_state.project.update_columns(columns)
+ end
+ end
+end