* Start with self deleting account * Moved deleting user content and activity out of moderator hierarchy * Added tests for the users delete services * Tests for Users::DeleteComments * User self-deletion (start) * Some tests for user self-delete * Specs for user self-deletion * Test flash settings on users delete * Added basic specs for the Users::DeleteJob * Send notification when a user was destroyed * Rename Users::DeleteJob to SelfDelete * Change texts about self-deletion * Fix users delete job spec * Rescue and log exceptions while self-deleting user * Added visible flash notices after deleting user * Remove unneeded css for flash notice * Fix link to a ghost account * Remove redundant css * Added github and twitter oauth apps links
28 lines
846 B
Ruby
28 lines
846 B
Ruby
require "rails_helper"
|
|
|
|
RSpec.describe Moderator::DeleteUser, type: :service do
|
|
let(:user) { create(:user) }
|
|
let(:admin) { create(:user, :super_admin) }
|
|
|
|
describe "delete_user" do
|
|
it "deletes user" do
|
|
described_class.call_deletion(user: user, admin: admin, user_params: {})
|
|
expect(User.find_by(id: user.id)).to be_nil
|
|
end
|
|
|
|
it "deletes user's follows" do
|
|
create(:follow, follower: user)
|
|
create(:follow, followable: user)
|
|
|
|
expect do
|
|
described_class.call_deletion(user: user, admin: admin, user_params: {})
|
|
end.to change(Follow, :count).by(-2)
|
|
end
|
|
|
|
it "deletes user's articles" do
|
|
article = create(:article, user: user)
|
|
described_class.call_deletion(user: user, admin: admin, user_params: {})
|
|
expect(Article.find_by(id: article.id)).to be_nil
|
|
end
|
|
end
|
|
end
|