summaryrefslogtreecommitdiff
path: root/spec/support
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-02-06 09:09:06 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-02-06 09:09:06 +0000
commitd87918510a866a5fcbbc2f899ad65c6938ebf5f5 (patch)
tree3c864a44f28dc17bcba2bcea30e49e0c08bd0582 /spec/support
parentfa478f189009649b115136957e2da30d760fe391 (diff)
downloadgitlab-ce-d87918510a866a5fcbbc2f899ad65c6938ebf5f5.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/support')
-rw-r--r--spec/support/helpers/dns_helpers.rb4
-rw-r--r--spec/support/shared_contexts/policies/project_policy_table_shared_context.rb164
2 files changed, 166 insertions, 2 deletions
diff --git a/spec/support/helpers/dns_helpers.rb b/spec/support/helpers/dns_helpers.rb
index 941b57c2c97..29be4da6902 100644
--- a/spec/support/helpers/dns_helpers.rb
+++ b/spec/support/helpers/dns_helpers.rb
@@ -17,13 +17,13 @@ module DnsHelpers
end
def stub_invalid_dns!
- allow(Addrinfo).to receive(:getaddrinfo).with(/foobar\.\w|(\d{1,3}\.){4,}\d{1,3}/i, anything, nil, :STREAM) do
+ allow(Addrinfo).to receive(:getaddrinfo).with(/\Afoobar\.\w|(\d{1,3}\.){4,}\d{1,3}\z/i, anything, nil, :STREAM) do
raise SocketError.new("getaddrinfo: Name or service not known")
end
end
def permit_local_dns!
- local_addresses = /(127|10)\.0\.0\.\d{1,3}|(192\.168|172\.16)\.\d{1,3}\.\d{1,3}|0\.0\.0\.0|localhost/i
+ local_addresses = /\A(127|10)\.0\.0\.\d{1,3}|(192\.168|172\.16)\.\d{1,3}\.\d{1,3}|0\.0\.0\.0|localhost\z/i
allow(Addrinfo).to receive(:getaddrinfo).with(local_addresses, anything, nil, :STREAM).and_call_original
allow(Addrinfo).to receive(:getaddrinfo).with(local_addresses, anything, nil, :STREAM, anything, anything).and_call_original
end
diff --git a/spec/support/shared_contexts/policies/project_policy_table_shared_context.rb b/spec/support/shared_contexts/policies/project_policy_table_shared_context.rb
index 0a918ccde81..efd82ecb15a 100644
--- a/spec/support/shared_contexts/policies/project_policy_table_shared_context.rb
+++ b/spec/support/shared_contexts/policies/project_policy_table_shared_context.rb
@@ -318,5 +318,169 @@ RSpec.shared_context 'ProjectPolicyTable context' do
:private | :non_member | 0
:private | :anonymous | 0
end
+
+ # :snippet_level, :project_level, :feature_access_level, :membership, :expected_count
+ def permission_table_for_project_snippet_access
+ :public | :public | :enabled | :admin | 1
+ :public | :public | :enabled | :reporter | 1
+ :public | :public | :enabled | :guest | 1
+ :public | :public | :enabled | :non_member | 1
+ :public | :public | :enabled | :anonymous | 1
+
+ :public | :public | :private | :admin | 1
+ :public | :public | :private | :reporter | 1
+ :public | :public | :private | :guest | 1
+ :public | :public | :private | :non_member | 0
+ :public | :public | :private | :anonymous | 0
+
+ :public | :public | :disabled | :admin | 1
+ :public | :public | :disabled | :reporter | 0
+ :public | :public | :disabled | :guest | 0
+ :public | :public | :disabled | :non_member | 0
+ :public | :public | :disabled | :anonymous | 0
+
+ :public | :internal | :enabled | :admin | 1
+ :public | :internal | :enabled | :reporter | 1
+ :public | :internal | :enabled | :guest | 1
+ :public | :internal | :enabled | :non_member | 1
+ :public | :internal | :enabled | :anonymous | 0
+
+ :public | :internal | :private | :admin | 1
+ :public | :internal | :private | :reporter | 1
+ :public | :internal | :private | :guest | 1
+ :public | :internal | :private | :non_member | 0
+ :public | :internal | :private | :anonymous | 0
+
+ :public | :internal | :disabled | :admin | 1
+ :public | :internal | :disabled | :reporter | 0
+ :public | :internal | :disabled | :guest | 0
+ :public | :internal | :disabled | :non_member | 0
+ :public | :internal | :disabled | :anonymous | 0
+
+ :public | :private | :private | :admin | 1
+ :public | :private | :private | :reporter | 1
+ :public | :private | :private | :guest | 1
+ :public | :private | :private | :non_member | 0
+ :public | :private | :private | :anonymous | 0
+
+ :public | :private | :disabled | :reporter | 0
+ :public | :private | :disabled | :guest | 0
+ :public | :private | :disabled | :non_member | 0
+ :public | :private | :disabled | :anonymous | 0
+
+ :internal | :public | :enabled | :admin | 1
+ :internal | :public | :enabled | :reporter | 1
+ :internal | :public | :enabled | :guest | 1
+ :internal | :public | :enabled | :non_member | 1
+ :internal | :public | :enabled | :anonymous | 0
+
+ :internal | :public | :private | :admin | 1
+ :internal | :public | :private | :reporter | 1
+ :internal | :public | :private | :guest | 1
+ :internal | :public | :private | :non_member | 0
+ :internal | :public | :private | :anonymous | 0
+
+ :internal | :public | :disabled | :admin | 1
+ :internal | :public | :disabled | :reporter | 0
+ :internal | :public | :disabled | :guest | 0
+ :internal | :public | :disabled | :non_member | 0
+ :internal | :public | :disabled | :anonymous | 0
+
+ :internal | :internal | :enabled | :admin | 1
+ :internal | :internal | :enabled | :reporter | 1
+ :internal | :internal | :enabled | :guest | 1
+ :internal | :internal | :enabled | :non_member | 1
+ :internal | :internal | :enabled | :anonymous | 0
+
+ :internal | :internal | :private | :admin | 1
+ :internal | :internal | :private | :reporter | 1
+ :internal | :internal | :private | :guest | 1
+ :internal | :internal | :private | :non_member | 0
+ :internal | :internal | :private | :anonymous | 0
+
+ :internal | :internal | :disabled | :admin | 1
+ :internal | :internal | :disabled | :reporter | 0
+ :internal | :internal | :disabled | :guest | 0
+ :internal | :internal | :disabled | :non_member | 0
+ :internal | :internal | :disabled | :anonymous | 0
+
+ :internal | :private | :private | :admin | 1
+ :internal | :private | :private | :reporter | 1
+ :internal | :private | :private | :guest | 1
+ :internal | :private | :private | :non_member | 0
+ :internal | :private | :private | :anonymous | 0
+
+ :internal | :private | :disabled | :admin | 1
+ :internal | :private | :disabled | :reporter | 0
+ :internal | :private | :disabled | :guest | 0
+ :internal | :private | :disabled | :non_member | 0
+ :internal | :private | :disabled | :anonymous | 0
+
+ :private | :public | :enabled | :admin | 1
+ :private | :public | :enabled | :reporter | 1
+ :private | :public | :enabled | :guest | 1
+ :private | :public | :enabled | :non_member | 0
+ :private | :public | :enabled | :anonymous | 0
+
+ :private | :public | :private | :admin | 1
+ :private | :public | :private | :reporter | 1
+ :private | :public | :private | :guest | 1
+ :private | :public | :private | :non_member | 0
+ :private | :public | :private | :anonymous | 0
+
+ :private | :public | :disabled | :admin | 1
+ :private | :public | :disabled | :reporter | 0
+ :private | :public | :disabled | :guest | 0
+ :private | :public | :disabled | :non_member | 0
+ :private | :public | :disabled | :anonymous | 0
+
+ :private | :internal | :enabled | :admin | 1
+ :private | :internal | :enabled | :reporter | 1
+ :private | :internal | :enabled | :guest | 1
+ :private | :internal | :enabled | :non_member | 0
+ :private | :internal | :enabled | :anonymous | 0
+
+ :private | :internal | :private | :admin | 1
+ :private | :internal | :private | :reporter | 1
+ :private | :internal | :private | :guest | 1
+ :private | :internal | :private | :non_member | 0
+ :private | :internal | :private | :anonymous | 0
+
+ :private | :internal | :disabled | :admin | 1
+ :private | :internal | :disabled | :reporter | 0
+ :private | :internal | :disabled | :guest | 0
+ :private | :internal | :disabled | :non_member | 0
+ :private | :internal | :disabled | :anonymous | 0
+
+ :private | :private | :private | :admin | 1
+ :private | :private | :private | :reporter | 1
+ :private | :private | :private | :guest | 1
+ :private | :private | :private | :non_member | 0
+ :private | :private | :private | :anonymous | 0
+
+ :private | :private | :disabled | :admin | 1
+ :private | :private | :disabled | :reporter | 0
+ :private | :private | :disabled | :guest | 0
+ :private | :private | :disabled | :non_member | 0
+ :private | :private | :disabled | :anonymous | 0
+ end
+
+ # :snippet_level, :membership, :expected_count
+ def permission_table_for_personal_snippet_access
+ :public | :admin | 1
+ :public | :author | 1
+ :public | :non_member | 1
+ :public | :anonymous | 1
+
+ :internal | :admin | 1
+ :internal | :author | 1
+ :internal | :non_member | 1
+ :internal | :anonymous | 0
+
+ :private | :admin | 1
+ :private | :author | 1
+ :private | :non_member | 0
+ :private | :anonymous | 0
+ end
# rubocop:enable Metrics/AbcSize
end