Skip to content

Commit 894f4f1

Browse files
committed
test(tui): update root.add/remove counts for confirm overlay
Keymap.attach() now always mounts a third overlay (confirm, alongside help), so every screen's renderer.root.add/remove count goes from 2 to 3. Mechanical update across all screen suites.
1 parent 41ab713 commit 894f4f1

10 files changed

Lines changed: 48 additions & 32 deletions

tests/tui/screens/about.test.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,9 @@ describe('AboutScreen', () => {
2727

2828
await new Promise((resolve) => setTimeout(resolve, 10));
2929

30-
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1).
31-
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(2);
30+
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1),
31+
// one for the auto-mounted confirm overlay (TR.C2).
32+
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(3);
3233
const shellRoot = (mockContext.renderer.root.add as any).mock.calls[0][0];
3334
expect(shellRoot.constructor.name).toBe('BoxRenderable');
3435

@@ -132,7 +133,8 @@ describe('AboutScreen', () => {
132133
screen.cleanup();
133134

134135
expect(mockContext.renderer.keyInput.off).toHaveBeenCalledWith('keypress', expect.any(Function));
135-
// One removal for the screen shell, one for the help overlay (TR.C1).
136-
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(2);
136+
// One removal for the screen shell, one for the help overlay (TR.C1),
137+
// one for the confirm overlay (TR.C2).
138+
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(3);
137139
});
138140
});

tests/tui/screens/check-results.test.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,9 @@ describe('CheckResultsScreen', () => {
7474

7575
await new Promise((resolve) => setTimeout(resolve, 10));
7676

77-
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1).
78-
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(2);
77+
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1),
78+
// one for the auto-mounted confirm overlay (TR.C2).
79+
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(3);
7980
const shellRoot = (mockContext.renderer.root.add as any).mock.calls[0][0];
8081
expect(shellRoot.constructor.name).toBe('BoxRenderable');
8182

@@ -224,7 +225,8 @@ describe('CheckResultsScreen', () => {
224225
screen.cleanup();
225226

226227
expect(mockContext.renderer.keyInput.off).toHaveBeenCalledWith('keypress', expect.any(Function));
227-
// One removal for the screen shell, one for the help overlay (TR.C1).
228-
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(2);
228+
// One removal for the screen shell, one for the help overlay (TR.C1),
229+
// one for the confirm overlay (TR.C2).
230+
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(3);
229231
});
230232
});

tests/tui/screens/dashboard.test.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,9 @@ describe('Dashboard', () => {
4242

4343
await new Promise((resolve) => setTimeout(resolve, 50));
4444

45-
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1).
46-
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(2);
45+
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1),
46+
// one for the auto-mounted confirm overlay (TR.C2).
47+
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(3);
4748
const addedRenderable = (mockContext.renderer.root.add as any).mock.calls[0][0];
4849
expect(addedRenderable).toBeDefined();
4950
expect(addedRenderable.constructor.name).toBe('BoxRenderable');
@@ -73,8 +74,9 @@ describe('Dashboard', () => {
7374
'keypress',
7475
expect.any(Function)
7576
);
76-
// One removal for the screen shell, one for the help overlay (TR.C1).
77-
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(2);
77+
// One removal for the screen shell, one for the help overlay (TR.C1),
78+
// one for the confirm overlay (TR.C2).
79+
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(3);
7880
});
7981

8082
it('renders a footer containing "Quit" driven by the keymap', async () => {

tests/tui/screens/file-picker.test.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,9 @@ describe('FilePicker', () => {
7676

7777
await new Promise((resolve) => setTimeout(resolve, 10));
7878

79-
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1).
80-
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(2);
79+
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1),
80+
// one for the auto-mounted confirm overlay (TR.C2).
81+
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(3);
8182
const addedRenderable = (mockContext.renderer.root.add as any).mock.calls[0][0];
8283
expect(addedRenderable).toBeDefined();
8384
expect(addedRenderable.constructor.name).toBe('BoxRenderable');
@@ -117,8 +118,9 @@ describe('FilePicker', () => {
117118
'keypress',
118119
expect.any(Function)
119120
);
120-
// One removal for the screen shell, one for the help overlay (TR.C1).
121-
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(2);
121+
// One removal for the screen shell, one for the help overlay (TR.C1),
122+
// one for the confirm overlay (TR.C2).
123+
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(3);
122124
});
123125

124126
it('shortenPath replaces HOME with ~', () => {

tests/tui/screens/mapping-editor.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,9 @@ describe('MappingEditorScreen', () => {
9393

9494
await new Promise((resolve) => setTimeout(resolve, 50));
9595

96-
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1).
97-
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(2);
96+
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1),
97+
// one for the auto-mounted confirm overlay (TR.C2).
98+
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(3);
9899
const addedRenderable = (mockContext.renderer.root.add as any).mock.calls[0][0];
99100
expect(addedRenderable).toBeDefined();
100101
expect(addedRenderable.constructor.name).toBe('BoxRenderable');

tests/tui/screens/mapping-save.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,9 @@ describe('MappingSaveScreen', () => {
9191

9292
await new Promise((resolve) => setTimeout(resolve, 50));
9393

94-
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1).
95-
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(2);
94+
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1),
95+
// one for the auto-mounted confirm overlay (TR.C2).
96+
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(3);
9697
const addedRenderable = (mockContext.renderer.root.add as any).mock.calls[0][0];
9798
expect(addedRenderable).toBeDefined();
9899
expect(addedRenderable.constructor.name).toBe('BoxRenderable');

tests/tui/screens/settings.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,9 @@ describe('SettingsScreen', () => {
7171

7272
await new Promise((resolve) => setTimeout(resolve, 50));
7373

74-
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1).
75-
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(2);
74+
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1),
75+
// one for the auto-mounted confirm overlay (TR.C2).
76+
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(3);
7677
const shellRoot = (mockContext.renderer.root.add as any).mock.calls[0][0];
7778
expect(shellRoot.constructor.name).toBe('BoxRenderable');
7879
});

tests/tui/screens/success.test.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,9 @@ describe('SuccessScreen', () => {
2727

2828
await new Promise((resolve) => setTimeout(resolve, 10));
2929

30-
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1).
31-
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(2);
30+
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1),
31+
// one for the auto-mounted confirm overlay (TR.C2).
32+
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(3);
3233
const shellRoot = (mockContext.renderer.root.add as any).mock.calls[0][0];
3334
expect(shellRoot.constructor.name).toBe('BoxRenderable');
3435

@@ -188,7 +189,8 @@ describe('SuccessScreen', () => {
188189
screen.cleanup();
189190

190191
expect(mockContext.renderer.keyInput.off).toHaveBeenCalledWith('keypress', expect.any(Function));
191-
// One removal for the screen shell, one for the help overlay (TR.C1).
192-
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(2);
192+
// One removal for the screen shell, one for the help overlay (TR.C1),
193+
// one for the confirm overlay (TR.C2).
194+
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(3);
193195
});
194196
});

tests/tui/screens/validation-explorer.test.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,9 @@ describe('ValidationExplorerScreen', () => {
6565

6666
await new Promise((resolve) => setTimeout(resolve, 10));
6767

68-
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1).
69-
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(2);
68+
// One call for the screen shell, one for the auto-mounted help overlay (TR.C1),
69+
// one for the auto-mounted confirm overlay (TR.C2).
70+
expect(mockContext.renderer.root.add).toHaveBeenCalledTimes(3);
7071
const shellRoot = (mockContext.renderer.root.add as any).mock.calls[0][0];
7172
expect(shellRoot.constructor.name).toBe('BoxRenderable');
7273

@@ -285,7 +286,8 @@ describe('ValidationExplorerScreen', () => {
285286
screen.cleanup();
286287

287288
expect(mockContext.renderer.keyInput.off).toHaveBeenCalledWith('keypress', expect.any(Function));
288-
// One removal for the screen shell, one for the help overlay (TR.C1).
289-
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(2);
289+
// One removal for the screen shell, one for the help overlay (TR.C1),
290+
// one for the confirm overlay (TR.C2).
291+
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(3);
290292
});
291293
});

tests/tui/screens/workflow.test.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,8 @@ describe('WorkflowScreen', () => {
175175
screen.cleanup();
176176

177177
expect(mockContext.renderer.keyInput.off).toHaveBeenCalledWith('keypress', expect.any(Function));
178-
// One removal for the screen shell, one for the help overlay (TR.C1).
179-
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(2);
178+
// One removal for the screen shell, one for the help overlay (TR.C1),
179+
// one for the confirm overlay (TR.C2).
180+
expect(mockContext.renderer.root.remove).toHaveBeenCalledTimes(3);
180181
});
181182
});

0 commit comments

Comments
 (0)