summaryrefslogtreecommitdiff
path: root/spec/factories
diff options
context:
space:
mode:
authorJames Edwards-Jones <jedwardsjones@gitlab.com>2017-03-15 22:29:07 +0000
committerJames Edwards-Jones <jedwardsjones@gitlab.com>2017-03-31 19:37:01 +0100
commit91ed8ed687ee9edbda0098475e66ad41f886d7a5 (patch)
tree7a446fa1048484d2ccb25a37e7ce650884b7d76f /spec/factories
parent1a416a42f1c1b876ecd96687e41696bc915cc2c2 (diff)
downloadgitlab-ce-91ed8ed687ee9edbda0098475e66ad41f886d7a5.tar.gz
Protected tags copy/paste from protected branches
Should provide basic CRUD backend for frontend to work from. Doesn’t include frontend, API, or the internal API used from gitlab-shell
Diffstat (limited to 'spec/factories')
-rw-r--r--spec/factories/protected_tags.rb22
1 files changed, 22 insertions, 0 deletions
diff --git a/spec/factories/protected_tags.rb b/spec/factories/protected_tags.rb
new file mode 100644
index 00000000000..f0016b37d66
--- /dev/null
+++ b/spec/factories/protected_tags.rb
@@ -0,0 +1,22 @@
+FactoryGirl.define do
+ factory :protected_tag do
+ name
+ project
+
+ after(:build) do |protected_tag|
+ protected_tag.push_access_levels.new(access_level: Gitlab::Access::MASTER)
+ end
+
+ trait :developers_can_push do
+ after(:create) do |protected_tag|
+ protected_tag.push_access_levels.first.update!(access_level: Gitlab::Access::DEVELOPER)
+ end
+ end
+
+ trait :no_one_can_push do
+ after(:create) do |protected_tag|
+ protected_tag.push_access_levels.first.update!(access_level: Gitlab::Access::NO_ACCESS)
+ end
+ end
+ end
+end