Skip to content

Commit 37723f1

Browse files
authored
Latest mocha uses fullPath instead of titlePath (microsoft#18933)
1 parent d384a6a commit 37723f1

File tree

3 files changed

+14
-12
lines changed

3 files changed

+14
-12
lines changed

src/harness/parallel/host.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,9 @@ namespace Harness.Parallel.Host {
312312
function makeMochaTest(test: ErrorInfo) {
313313
return {
314314
fullTitle: () => {
315+
return test.name.join(" ");
316+
},
317+
titlePath: () => {
315318
return test.name;
316319
},
317320
err: {

src/harness/parallel/shared.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ namespace Harness.Parallel {
66
export type ParallelCloseMessage = { type: "close" } | never;
77
export type ParallelHostMessage = ParallelTestMessage | ParallelCloseMessage | ParallelBatchMessage;
88

9-
export type ParallelErrorMessage = { type: "error", payload: { error: string, stack: string, name?: string } } | never;
10-
export type ErrorInfo = ParallelErrorMessage["payload"] & { name: string };
9+
export type ParallelErrorMessage = { type: "error", payload: { error: string, stack: string, name?: string[] } } | never;
10+
export type ErrorInfo = ParallelErrorMessage["payload"] & { name: string[] };
1111
export type ParallelResultMessage = { type: "result", payload: { passing: number, errors: ErrorInfo[], duration: number, runner: TestRunnerKind, file: string } } | never;
1212
export type ParallelBatchProgressMessage = { type: "progress", payload: ParallelResultMessage["payload"] } | never;
1313
export type ParallelClientMessage = ParallelErrorMessage | ParallelResultMessage | ParallelBatchProgressMessage;

src/harness/parallel/worker.ts

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,14 @@ namespace Harness.Parallel.Worker {
5757
callback.call(fakeContext);
5858
}
5959
catch (e) {
60-
errors.push({ error: `Error executing suite: ${e.message}`, stack: e.stack, name: namestack.join(" ") });
60+
errors.push({ error: `Error executing suite: ${e.message}`, stack: e.stack, name: [...namestack] });
6161
return cleanup();
6262
}
6363
try {
6464
beforeFunc && beforeFunc();
6565
}
6666
catch (e) {
67-
errors.push({ error: `Error executing before function: ${e.message}`, stack: e.stack, name: namestack.join(" ") });
67+
errors.push({ error: `Error executing before function: ${e.message}`, stack: e.stack, name: [...namestack] });
6868
return cleanup();
6969
}
7070
finally {
@@ -76,7 +76,7 @@ namespace Harness.Parallel.Worker {
7676
afterFunc && afterFunc();
7777
}
7878
catch (e) {
79-
errors.push({ error: `Error executing after function: ${e.message}`, stack: e.stack, name: namestack.join(" ") });
79+
errors.push({ error: `Error executing after function: ${e.message}`, stack: e.stack, name: [...namestack] });
8080
}
8181
finally {
8282
afterFunc = undefined;
@@ -107,13 +107,12 @@ namespace Harness.Parallel.Worker {
107107
slow() { return this; },
108108
};
109109
namestack.push(name);
110-
name = namestack.join(" ");
111110
if (beforeEachFunc) {
112111
try {
113112
beforeEachFunc();
114113
}
115114
catch (error) {
116-
errors.push({ error: error.message, stack: error.stack, name });
115+
errors.push({ error: error.message, stack: error.stack, name: [...namestack] });
117116
namestack.pop();
118117
return;
119118
}
@@ -124,7 +123,7 @@ namespace Harness.Parallel.Worker {
124123
callback.call(fakeContext);
125124
}
126125
catch (error) {
127-
errors.push({ error: error.message, stack: error.stack, name });
126+
errors.push({ error: error.message, stack: error.stack, name: [...namestack] });
128127
return;
129128
}
130129
finally {
@@ -141,7 +140,7 @@ namespace Harness.Parallel.Worker {
141140
throw new Error(`done() callback called multiple times; ensure it is only called once.`);
142141
}
143142
if (err) {
144-
errors.push({ error: err.toString(), stack: "", name });
143+
errors.push({ error: err.toString(), stack: "", name: [...namestack] });
145144
}
146145
else {
147146
passing++;
@@ -150,14 +149,14 @@ namespace Harness.Parallel.Worker {
150149
});
151150
}
152151
catch (error) {
153-
errors.push({ error: error.message, stack: error.stack, name });
152+
errors.push({ error: error.message, stack: error.stack, name: [...namestack] });
154153
return;
155154
}
156155
finally {
157156
namestack.pop();
158157
}
159158
if (!completed) {
160-
errors.push({ error: "Test completes asynchronously, which is unsupported by the parallel harness", stack: "", name });
159+
errors.push({ error: "Test completes asynchronously, which is unsupported by the parallel harness", stack: "", name: [...namestack] });
161160
}
162161
}
163162
}
@@ -204,7 +203,7 @@ namespace Harness.Parallel.Worker {
204203
}
205204
});
206205
process.on("uncaughtException", error => {
207-
const message: ParallelErrorMessage = { type: "error", payload: { error: error.message, stack: error.stack, name: namestack.join(" ") } };
206+
const message: ParallelErrorMessage = { type: "error", payload: { error: error.message, stack: error.stack, name: [...namestack] } };
208207
try {
209208
process.send(message);
210209
}

0 commit comments

Comments
 (0)