mirror of
https://gh.wpcy.net/https://github.com/discourse/discourse.git
synced 2026-05-05 12:46:33 +08:00
35 lines
993 B
Ruby
35 lines
993 B
Ruby
# frozen_string_literal: true
|
|
|
|
RSpec.describe Admin::UnknownReviewablesController do
|
|
let(:admin) { Fabricate(:admin) }
|
|
let(:user) { Fabricate(:user) }
|
|
fab!(:reviewable)
|
|
fab!(:unknown_reviewable) { Fabricate(:reviewable, type: "ReviewablePost") }
|
|
|
|
describe "#destroy" do
|
|
context "when user is an admin" do
|
|
before do
|
|
sign_in admin
|
|
|
|
allow(Reviewable).to receive(:types).and_return([ReviewableUser])
|
|
end
|
|
|
|
it "destroys all pending reviewables of specified types" do
|
|
delete "/admin/unknown_reviewables/destroy.json"
|
|
expect(response.code).to eq("200")
|
|
|
|
reviewable.reload
|
|
expect { unknown_reviewable.reload }.to raise_error(ActiveRecord::RecordNotFound)
|
|
end
|
|
end
|
|
|
|
context "when user is not an admin" do
|
|
before { sign_in user }
|
|
|
|
it "raises Discourse::InvalidAccess" do
|
|
delete "/admin/unknown_reviewables/destroy.json"
|
|
expect(response.code).to eq("404")
|
|
end
|
|
end
|
|
end
|
|
end
|