Run tests when resetting pi, so we do not forget to run tests
This commit is contained in:
parent
6b5329bd75
commit
716bfb4b12
37
.pi/extensions/run_make_test.ts
Normal file
37
.pi/extensions/run_make_test.ts
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
|
||||||
|
|
||||||
|
export default function (pi: ExtensionAPI) {
|
||||||
|
pi.on("session_start", async (_event, ctx) => {
|
||||||
|
try {
|
||||||
|
const { stdout, stderr, code } = await pi.exec("make", ["test"]);
|
||||||
|
const output = stdout + stderr;
|
||||||
|
|
||||||
|
if (code === 0) {
|
||||||
|
ctx.ui.notify("make test passed", "info");
|
||||||
|
} else {
|
||||||
|
ctx.ui.notify(`make test failed (exit ${code})`, "error");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Also send the output as a message so it's visible in the session
|
||||||
|
pi.sendMessage({
|
||||||
|
customType: "run-make-test",
|
||||||
|
content: [
|
||||||
|
{
|
||||||
|
type: "text",
|
||||||
|
text: `Here's the result of running \`make test\`:\n\n\`\`\`\n${output}\`\`\``,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
display: true,
|
||||||
|
}, { deliverAs: "followUp" });
|
||||||
|
} catch (error) {
|
||||||
|
const message = error instanceof Error ? error.message : String(error);
|
||||||
|
pi.sendMessage({
|
||||||
|
customType: "run-make-test",
|
||||||
|
content: [
|
||||||
|
{ type: "text", text: `Error running make test: ${message}` },
|
||||||
|
],
|
||||||
|
display: true,
|
||||||
|
}, { deliverAs: "followUp" });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user