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-14 13:18:03 +0300
committerZeger-Jan van de Weg <zegerjan@gitlab.com>2016-03-16 00:19:51 +0300
commit29a43373ce9b3676ae7baea61b0ecaf67db67445 (patch)
tree8a899b4fe41276c0f119aa4149f35e5bc80a0817 /spec/workers/delete_user_worker_spec.rb
parent8077a5f9589e365f58f22015819bff7debcd7299 (diff)
Specs for the DeleteUserService
Diffstat (limited to 'spec/workers/delete_user_worker_spec.rb')
-rw-r--r--spec/workers/delete_user_worker_spec.rb60
1 files changed, 11 insertions, 49 deletions
diff --git a/spec/workers/delete_user_worker_spec.rb b/spec/workers/delete_user_worker_spec.rb
index 975b0470cb5..14c56521280 100644
--- a/spec/workers/delete_user_worker_spec.rb
+++ b/spec/workers/delete_user_worker_spec.rb
@@ -1,58 +1,20 @@
require 'spec_helper'
describe DeleteUserWorker do
- describe "Deletes a user and all their personal projects" do
- let!(:user) { create(:user) }
- let!(:current_user) { create(:user) }
- let!(:namespace) { create(:namespace, owner: user) }
- let!(:project) { create(:project, namespace: namespace) }
+ let!(:user) { create(:user) }
+ let!(:current_user) { create(:user) }
- context 'no force flag given' do
- before do
- DeleteUserWorker.new.perform(current_user.id, user.id)
- end
+ it "calls the DeleteUserWorker with the params it was given" do
+ expect_any_instance_of(DeleteUserService).to receive(:execute).
+ with(user, {})
- it 'deletes all personal projects' do
- expect { Project.find(project.id) }.to raise_error(ActiveRecord::RecordNotFound)
- end
-
- it 'deletes the user' do
- expect { User.find(user.id) }.to raise_error(ActiveRecord::RecordNotFound)
- end
- end
-
- context "solo owned groups present" do
- let(:solo_owned) { create(:group) }
- let(:member) { create(:group_member) }
- let(:user) { member.user }
-
- before do
- solo_owned.group_members = [member]
- DeleteUserWorker.new.perform(current_user.id, user.id)
- end
-
- it 'does not delete the user' do
- expect(User.find(user.id)).to eq user
- end
- end
-
- context "deletions with force" do
- let(:solo_owned) { create(:group) }
- let(:member) { create(:group_member) }
- let(:user) { member.user }
-
- before do
- solo_owned.group_members = [member]
- DeleteUserWorker.new.perform(current_user.id, user.id, "delete_solo_owned_groups" => true)
- end
+ DeleteUserWorker.new.perform(current_user.id, user.id)
+ end
- it 'deletes solo owned groups' do
- expect { Project.find(solo_owned.id) }.to raise_error(ActiveRecord::RecordNotFound)
- end
+ it "uses symbolized keys" do
+ expect_any_instance_of(DeleteUserService).to receive(:execute).
+ with(user, test: "test")
- it 'deletes the user' do
- expect { User.find(user.id) }.to raise_error(ActiveRecord::RecordNotFound)
- end
- end
+ DeleteUserWorker.new.perform(current_user.id, user.id, "test" => "test")
end
end