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:
authorZeger-Jan van de Weg <zegerjan@gitlab.com>2016-03-11 00:08:11 +0300
committerZeger-Jan van de Weg <zegerjan@gitlab.com>2016-03-13 21:08:04 +0300
commit42fcd3881fcece5c9bd4b720460d6cade573b151 (patch)
treeacabaaa610da27413ffdd7b5a0dd1610d3772a4c /spec/models
parent065de4ab791373f7e6b8b5d3b73b5fe7c9e8e7c5 (diff)
External Users
The user has the rights of a public user execpt it can never create a project, group, or team. Also it cant view internal projects.
Diffstat (limited to 'spec/models')
-rw-r--r--spec/models/user_spec.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb
index 909b6796591..8642654ad33 100644
--- a/spec/models/user_spec.rb
+++ b/spec/models/user_spec.rb
@@ -206,6 +206,21 @@ describe User, models: true do
it { is_expected.to respond_to(:is_admin?) }
it { is_expected.to respond_to(:name) }
it { is_expected.to respond_to(:private_token) }
+ it { is_expected.to respond_to(:external?) }
+ end
+
+ describe 'before save hook' do
+ context 'when saving an external user' do
+ let(:user) { create(:user) }
+ let(:external_user) { create(:user, external: true) }
+
+ it "sets other properties aswell" do
+ expect(external_user.can_create_team).to be_falsey
+ expect(external_user.can_create_group).to be_falsey
+ expect(external_user.hide_project_limit).to be_truthy
+ expect(external_user.projects_limit).to be 0
+ end
+ end
end
describe '#confirm' do
@@ -430,6 +445,7 @@ describe User, models: true do
expect(user.projects_limit).to eq(Gitlab.config.gitlab.default_projects_limit)
expect(user.can_create_group).to eq(Gitlab.config.gitlab.default_can_create_group)
expect(user.theme_id).to eq(Gitlab.config.gitlab.default_theme)
+ expect(user.external).to be_falsey
end
end