Change alert and action HTTP DELETE to return 204 (#41933) (#42032)

* Change alert and action HTTP DELETE to return 204

Prior to this, a 200 was being returned, with some kind of body.

That doesn't seem to be the usual response, eg the [Delete space][] API
returns a 204 with no body.

[Delete space]: https://www.elastic.co/guide/en/kibana/master/spaces-api-delete.html

* resolve PR comments
This commit is contained in:
Patrick Mueller 2019-07-26 11:39:05 -04:00 committed by GitHub
parent f5208a4a2d
commit e7c945f2cf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 21 additions and 21 deletions

View file

@ -22,9 +22,8 @@ it('deletes an action with proper parameters', async () => {
actionsClient.delete.mockResolvedValueOnce({ success: true });
const { payload, statusCode } = await server.inject(request);
expect(statusCode).toBe(200);
const response = JSON.parse(payload);
expect(response).toEqual({ success: true });
expect(statusCode).toBe(204);
expect(payload).toEqual('');
expect(actionsClient.delete).toHaveBeenCalledTimes(1);
expect(actionsClient.delete.mock.calls[0]).toMatchInlineSnapshot(`
Array [

View file

@ -26,10 +26,11 @@ export function deleteRoute(server: Hapi.Server) {
.required(),
},
},
async handler(request: DeleteRequest) {
async handler(request: DeleteRequest, h: Hapi.ResponseToolkit) {
const { id } = request.params;
const actionsClient = request.getActionsClient!();
return await actionsClient.delete({ id });
await actionsClient.delete({ id });
return h.response().code(204);
},
});
}

View file

@ -20,9 +20,8 @@ test('deletes an alert with proper parameters', async () => {
alertsClient.delete.mockResolvedValueOnce({});
const { payload, statusCode } = await server.inject(request);
expect(statusCode).toBe(200);
const response = JSON.parse(payload);
expect(response).toEqual({});
expect(statusCode).toBe(204);
expect(payload).toEqual('');
expect(alertsClient.delete).toHaveBeenCalledTimes(1);
expect(alertsClient.delete.mock.calls[0]).toMatchInlineSnapshot(`
Array [

View file

@ -26,10 +26,11 @@ export function deleteAlertRoute(server: Hapi.Server) {
.required(),
},
},
async handler(request: DeleteRequest) {
async handler(request: DeleteRequest, h: Hapi.ResponseToolkit) {
const { id } = request.params;
const alertsClient = request.getAlertsClient!();
return await alertsClient.delete({ id });
await alertsClient.delete({ id });
return h.response().code(204);
},
});
}

View file

@ -18,11 +18,11 @@ export default function deleteActionTests({ getService }: KibanaFunctionalTestDe
beforeEach(() => esArchiver.load('actions/basic'));
afterEach(() => esArchiver.unload('actions/basic'));
it('should return 200 when deleting an action', async () => {
it('should return 204 when deleting an action', async () => {
await supertest
.delete(`/api/action/${ES_ARCHIVER_ACTION_ID}`)
.set('kbn-xsrf', 'foo')
.expect(200, {});
.expect(204, '');
});
it(`should return 404 when action doesn't exist`, async () => {

View file

@ -31,7 +31,7 @@ export default function alertTests({ getService }: KibanaFunctionalTestDefaultPr
return supertest
.delete(`/api/alert/${id}`)
.set('kbn-xsrf', 'foo')
.expect(200);
.expect(204, '');
})
);
await esArchiver.unload('actions/basic');

View file

@ -25,7 +25,7 @@ export default function createAlertTests({ getService }: KibanaFunctionalTestDef
return supertest
.delete(`/api/alert/${id}`)
.set('kbn-xsrf', 'foo')
.expect(200);
.expect(204, '');
})
);
await esArchiver.unload('actions/basic');

View file

@ -39,11 +39,11 @@ export default function createDeleteTests({ getService }: KibanaFunctionalTestDe
});
}
it('should return 200 when deleting an alert and removing scheduled task', async () => {
it('should return 204 when deleting an alert and removing scheduled task', async () => {
await supertest
.delete(`/api/alert/${alertId}`)
.set('kbn-xsrf', 'foo')
.expect(200);
.expect(204, '');
let hasThrownError = false;
try {
await getScheduledTask(scheduledTaskId);

View file

@ -33,7 +33,7 @@ export default function createDisableAlertTests({
await supertest
.delete(`/api/alert/${createdAlert.id}`)
.set('kbn-xsrf', 'foo')
.expect(200);
.expect(204, '');
await esArchiver.unload('actions/basic');
});

View file

@ -33,7 +33,7 @@ export default function createEnableAlertTests({
await supertest
.delete(`/api/alert/${createdAlert.id}`)
.set('kbn-xsrf', 'foo')
.expect(200);
.expect(204, '');
await esArchiver.unload('actions/basic');
});

View file

@ -32,7 +32,7 @@ export default function createFindTests({ getService }: KibanaFunctionalTestDefa
await supertest
.delete(`/api/alert/${alertId}`)
.set('kbn-xsrf', 'foo')
.expect(200);
.expect(204, '');
await esArchiver.unload('actions/basic');
});

View file

@ -32,7 +32,7 @@ export default function createGetTests({ getService }: KibanaFunctionalTestDefau
await supertest
.delete(`/api/alert/${alertId}`)
.set('kbn-xsrf', 'foo')
.expect(200);
.expect(204, '');
await esArchiver.unload('actions/basic');
});

View file

@ -32,7 +32,7 @@ export default function createUpdateTests({ getService }: KibanaFunctionalTestDe
await supertest
.delete(`/api/alert/${createdAlert.id}`)
.set('kbn-xsrf', 'foo')
.expect(200);
.expect(204, '');
await esArchiver.unload('actions/basic');
});