Fix empty self-rendered tool rows

closes #5299
This commit is contained in:
Mario Zechner
2026-06-02 15:25:27 +02:00
parent 6e269edfd0
commit 0d38e17b68
3 changed files with 57 additions and 0 deletions

View File

@@ -67,6 +67,37 @@ describe("ToolExecutionComponent parity", () => {
expect(rendered).toContain("custom result");
});
test("self-rendered empty tool rows take no layout space", () => {
const toolDefinition: ToolDefinition = {
...createBaseToolDefinition(),
renderShell: "self",
renderCall: () => new Text("", 0, 0),
renderResult: () => new Text("", 0, 0),
};
const component = new ToolExecutionComponent(
"custom_tool",
"tool-empty-self-render",
{},
{},
toolDefinition,
createFakeTui(),
process.cwd(),
);
expect(component.render(120)).toEqual([]);
component.updateResult(
{
content: [],
details: {},
isError: false,
},
false,
);
expect(component.render(120)).toEqual([]);
});
test("uses built-in rendering for built-in overrides without custom renderers", () => {
const overrideDefinition: ToolDefinition = {
...createBaseToolDefinition("edit"),