summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2015-05-28 13:14:58 +0000
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2015-05-28 13:14:58 +0000
commit05a44dcb8b70663e376acfb2b5874bae454bfecf (patch)
tree94cb2028e082ce4a9baa3cc846ef7171f129c790 /spec
parent06250eef2e12ed509b88f3770ae6d3fa4614b74d (diff)
parent2db026793df81f97515a13e1b4355436f6cc76c3 (diff)
downloadgitlab-ce-05a44dcb8b70663e376acfb2b5874bae454bfecf.tar.gz
Merge branch 'user-destroy-wo-groups' into 'master'
You can not remove user if he/she is an only owner of group To prevent loose of group data you need to transfer or remove group first before you can remove user Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> See merge request !730
Diffstat (limited to 'spec')
-rw-r--r--spec/models/user_spec.rb18
1 files changed, 17 insertions, 1 deletions
diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb
index e1205c18a85..49c7b7d99ce 100644
--- a/spec/models/user_spec.rb
+++ b/spec/models/user_spec.rb
@@ -572,7 +572,6 @@ describe User do
end
describe "#contributed_projects_ids" do
-
subject { create(:user) }
let!(:project1) { create(:project) }
let!(:project2) { create(:project, forked_from_project: project3) }
@@ -598,4 +597,21 @@ describe User do
expect(subject.contributed_projects_ids).not_to include(project2.id)
end
end
+
+ describe :can_be_removed? do
+ subject { create(:user) }
+
+ context 'no owned groups' do
+ it { expect(subject.can_be_removed?).to be_truthy }
+ end
+
+ context 'has owned groups' do
+ before do
+ group = create(:group)
+ group.add_owner(subject)
+ end
+
+ it { expect(subject.can_be_removed?).to be_falsey }
+ end
+ end
end