@@ -343,7 +343,7 @@ namespace ts.projectSystem {
343
343
return { session, events };
344
344
}
345
345
346
- function createSessionWithDefaultEventHandler<T extends protocol.AnyEvent>(host: TestServerHost, eventName : T["event"], opts: Partial<server.SessionOptions> = {}, ...eventNames: T["event"][] ) {
346
+ function createSessionWithDefaultEventHandler<T extends protocol.AnyEvent>(host: TestServerHost, eventNames : T["event"] | T["event"][] , opts: Partial<server.SessionOptions> = {}) {
347
347
const session = createSession(host, { canUseEvents: true, ...opts });
348
348
349
349
return {
@@ -354,15 +354,13 @@ namespace ts.projectSystem {
354
354
355
355
function getEvents() {
356
356
const outputEventRegex = /Content\-Length: [\d]+\r\n\r\n/;
357
- return filter(
358
- map(
359
- host.getOutput(), s => convertToObject(
360
- parseJsonText("json.json", s.replace(outputEventRegex, "")),
361
- []
362
- )
363
- ),
364
- e => e.event === eventName || eventNames.some(eventName => e.event === eventName)
365
- ) as T[];
357
+ return mapDefined(host.getOutput(), s => {
358
+ const e = convertToObject(
359
+ parseJsonText("json.json", s.replace(outputEventRegex, "")),
360
+ []
361
+ );
362
+ return (isArray(eventNames) ? eventNames.some(eventName => e.event === eventName) : e.event === eventNames) ? e as T : undefined;
363
+ });
366
364
}
367
365
368
366
function clearEvents() {
@@ -9625,7 +9623,7 @@ export const x = 10;`
9625
9623
9626
9624
describe("when using default event handler", () => {
9627
9625
verifyProjectLoadingStartAndFinish(host => {
9628
- const { session, getEvents, clearEvents } = createSessionWithDefaultEventHandler<protocol.ProjectLoadingStartEvent | protocol.ProjectLoadingFinishEvent>(host, server.ProjectLoadingStartEvent, {}, server.ProjectLoadingFinishEvent);
9626
+ const { session, getEvents, clearEvents } = createSessionWithDefaultEventHandler<protocol.ProjectLoadingStartEvent | protocol.ProjectLoadingFinishEvent>(host, [ server.ProjectLoadingStartEvent, server.ProjectLoadingFinishEvent] );
9629
9627
return {
9630
9628
session,
9631
9629
getNumberOfEvents: () => getEvents().length,
0 commit comments