Rename, tests Fail, not Error
Parsing no longer depends on ui widget
This commit is contained in:
parent
ed147f6470
commit
b6696a4f6c
@ -19,7 +19,7 @@ export default function testStatusExtension(pi: ExtensionAPI) {
|
|||||||
ctx.ui.setWidget("test-status", [
|
ctx.ui.setWidget("test-status", [
|
||||||
`${theme.fg("success", "●")} ${theme.fg("text", testResult.summary)}`,
|
`${theme.fg("success", "●")} ${theme.fg("text", testResult.summary)}`,
|
||||||
]);
|
]);
|
||||||
} else if (testResult.status === "Error" || event.isError) {
|
} else if (testResult.status === "Fail" || event.isError) {
|
||||||
ctx.ui.setWidget("test-status", [
|
ctx.ui.setWidget("test-status", [
|
||||||
`${theme.fg("error", "●")} ${theme.fg("text", testResult.summary)}`,
|
`${theme.fg("error", "●")} ${theme.fg("text", testResult.summary)}`,
|
||||||
]);
|
]);
|
||||||
|
|||||||
@ -35,14 +35,14 @@ describe("parseTestOutput", () => {
|
|||||||
|
|
||||||
const result = parseTestOutput(output);
|
const result = parseTestOutput(output);
|
||||||
|
|
||||||
expect(result.status).toBe("Error");
|
expect(result.status).toBe("Fail");
|
||||||
expect(result.summary).toContain("1 failed");
|
expect(result.summary).toContain("1 failed");
|
||||||
});
|
});
|
||||||
|
|
||||||
it("returns Error and a fallback summary for unrecognised output", () => {
|
it("returns Error and a fallback summary for unrecognised output", () => {
|
||||||
const result = parseTestOutput("some random output");
|
const result = parseTestOutput("some random output");
|
||||||
|
|
||||||
expect(result.status).toBe("Error");
|
expect(result.status).toBe("Fail");
|
||||||
expect(result.summary).toBe("Tests failed");
|
expect(result.summary).toBe("Tests failed");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
export type TestResult =
|
export type TestResult =
|
||||||
| { status: "Success"; summary: string }
|
| { status: "Success"; summary: string }
|
||||||
| { status: "Error"; summary: string };
|
| { status: "Fail"; summary: string };
|
||||||
|
|
||||||
export const isTestCommand = (command: string) => {
|
export const isTestCommand = (command: string) => {
|
||||||
return command.includes("npm test") || command.includes("vitest");
|
return command.includes("npm test") || command.includes("vitest");
|
||||||
@ -21,5 +21,5 @@ export function parseTestOutput(output: string): TestResult {
|
|||||||
const line = output
|
const line = output
|
||||||
.split("\n")
|
.split("\n")
|
||||||
.find((l) => /Tests\s+.+failed/.test(l));
|
.find((l) => /Tests\s+.+failed/.test(l));
|
||||||
return { status: "Error", summary: line?.trim() ?? "Tests failed" };
|
return { status: "Fail", summary: line?.trim() ?? "Tests failed" };
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user