diff --git a/src/core/server/http/http_server.test.ts b/src/core/server/http/http_server.test.ts index 640eed7e07ac00..57c3e399bdc53f 100644 --- a/src/core/server/http/http_server.test.ts +++ b/src/core/server/http/http_server.test.ts @@ -1099,6 +1099,16 @@ describe('setup contract', () => { }); }); + describe('#registerOnPreAuth', () => { + test('does not throw if called after stop', async () => { + const { registerOnPreAuth } = await server.setup(config); + await server.stop(); + expect(() => { + registerOnPreAuth((req, res) => res.unauthorized()); + }).not.toThrow(); + }); + }); + describe('#registerOnPostAuth', () => { test('does not throw if called after stop', async () => { const { registerOnPostAuth } = await server.setup(config); diff --git a/src/core/server/http/http_server.ts b/src/core/server/http/http_server.ts index 43f090272d68ca..7a958d07855fc2 100644 --- a/src/core/server/http/http_server.ts +++ b/src/core/server/http/http_server.ts @@ -66,7 +66,11 @@ export interface HttpServerSetup { /** @internal */ export type LifecycleRegistrar = Pick< HttpServerSetup, - 'registerAuth' | 'registerOnPreRouting' | 'registerOnPostAuth' | 'registerOnPreResponse' + | 'registerOnPreRouting' + | 'registerOnPreAuth' + | 'registerAuth' + | 'registerOnPostAuth' + | 'registerOnPreResponse' >; export class HttpServer { diff --git a/src/core/server/http/integration_tests/lifecycle.test.ts b/src/core/server/http/integration_tests/lifecycle.test.ts index 704c90348e9b75..8dbb848188c275 100644 --- a/src/core/server/http/integration_tests/lifecycle.test.ts +++ b/src/core/server/http/integration_tests/lifecycle.test.ts @@ -1169,11 +1169,11 @@ describe('run interceptors in the right order', () => { const executionOrder: string[] = []; registerOnPreRouting((req, res, t) => { - executionOrder.push('onOpeRouting'); + executionOrder.push('onPreRouting'); return t.next(); }); registerOnPreAuth((req, res, t) => { - executionOrder.push('onOpeAuth'); + executionOrder.push('onPreAuth'); return t.next(); }); registerAuth((req, res, t) => { @@ -1195,8 +1195,8 @@ describe('run interceptors in the right order', () => { await supertest(innerServer.listener).get('/').expect(200); expect(executionOrder).toEqual([ - 'onOpeRouting', - 'onOpeAuth', + 'onPreRouting', + 'onPreAuth', 'auth', 'onPostAuth', 'onPreResponse', @@ -1217,11 +1217,11 @@ describe('run interceptors in the right order', () => { const executionOrder: string[] = []; registerOnPreRouting((req, res, t) => { - executionOrder.push('onOpeRouting'); + executionOrder.push('onPreRouting'); return t.next(); }); registerOnPreAuth((req, res, t) => { - executionOrder.push('onOpeAuth'); + executionOrder.push('onPreAuth'); return t.next(); }); registerOnPostAuth((req, res, t) => { @@ -1238,7 +1238,7 @@ describe('run interceptors in the right order', () => { await server.start(); await supertest(innerServer.listener).get('/').expect(200); - expect(executionOrder).toEqual(['onOpeRouting', 'onOpeAuth', 'onPostAuth', 'onPreResponse']); + expect(executionOrder).toEqual(['onPreRouting', 'onPreAuth', 'onPostAuth', 'onPreResponse']); }); it('when a user failed auth', async () => { @@ -1256,11 +1256,11 @@ describe('run interceptors in the right order', () => { const executionOrder: string[] = []; registerOnPreRouting((req, res, t) => { - executionOrder.push('onOpeRouting'); + executionOrder.push('onPreRouting'); return t.next(); }); registerOnPreAuth((req, res, t) => { - executionOrder.push('onOpeAuth'); + executionOrder.push('onPreAuth'); return t.next(); }); registerAuth((req, res, t) => { @@ -1281,6 +1281,6 @@ describe('run interceptors in the right order', () => { await server.start(); await supertest(innerServer.listener).get('/').expect(403); - expect(executionOrder).toEqual(['onOpeRouting', 'onOpeAuth', 'auth', 'onPreResponse']); + expect(executionOrder).toEqual(['onPreRouting', 'onPreAuth', 'auth', 'onPreResponse']); }); });