summaryrefslogtreecommitdiff
path: root/spec/requests/api/wikis_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/requests/api/wikis_spec.rb')
-rw-r--r--spec/requests/api/wikis_spec.rb15
1 files changed, 15 insertions, 0 deletions
diff --git a/spec/requests/api/wikis_spec.rb b/spec/requests/api/wikis_spec.rb
index f271f8aa853..d35aab40ca9 100644
--- a/spec/requests/api/wikis_spec.rb
+++ b/spec/requests/api/wikis_spec.rb
@@ -14,6 +14,7 @@ require 'spec_helper'
RSpec.describe API::Wikis do
include WorkhorseHelpers
+ include AfterNextHelpers
let(:user) { create(:user) }
let(:group) { create(:group).tap { |g| g.add_owner(user) } }
@@ -578,6 +579,20 @@ RSpec.describe API::Wikis do
include_examples 'wiki API 404 Wiki Page Not Found'
end
end
+
+ context 'when there is an error deleting the page' do
+ it 'returns 422' do
+ project.add_maintainer(user)
+
+ allow_next(WikiPages::DestroyService, current_user: user, container: project)
+ .to receive(:execute).and_return(ServiceResponse.error(message: 'foo'))
+
+ delete(api(url, user))
+
+ expect(response).to have_gitlab_http_status(:unprocessable_entity)
+ expect(json_response['message']).to eq 'foo'
+ end
+ end
end
context 'when wiki belongs to a group project' do