summaryrefslogtreecommitdiff
path: root/test/panes.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-10-02 01:03:55 -0300
committerGabriel Schneider <[email protected]>2026-10-02 01:33:55 -0300
commitd65ec3394ff619118d9208718477469c673a5598 (patch)
treed66c6bd145258fc2b369714abc618aa6766dfb5e /test/panes.zig
parent2537126c643db75419ff846f1041e40d154c9426 (diff)
downloadpardes-d65ec3394ff619118d9208718477469c673a5598.tar.gz
pardes-d65ec3394ff619118d9208718477469c673a5598.zip
A name typed into the tag's path survives Esc, pending, as any edit does: the next Enter renames the buffer, a second Esc drops the draft, and a stray key meanwhile changes nothing but says so
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'test/panes.zig')
-rw-r--r--test/panes.zig7
1 files changed, 7 insertions, 0 deletions
diff --git a/test/panes.zig b/test/panes.zig
index 8f1c510a..41061bea 100644
--- a/test/panes.zig
+++ b/test/panes.zig
@@ -367,6 +367,8 @@ const TagNavigationTests = struct {
p.update(.{ .key = .{ .cp = 'x', .text = "x" } });
try std.testing.expect(pane.prompt == .name);
try std.testing.expectEqualStrings("x/test.txt", pane.input.own.?);
+ // Esc keeps the draft pending; a second drops it.
+ key(p, Key.escape);
key(p, Key.escape);
try std.testing.expect(pane.prompt == .none);
try std.testing.expectEqualStrings("/test.txt", pane.file.?.path);
@@ -1621,7 +1623,9 @@ test "pane filename drafts commit and cancel without changing body or command ta
try std.testing.expectEqualStrings("/new name.zig", pane.input.own.?);
try std.testing.expectEqualStrings(tail, pardes.tagline.curTail(pane));
try std.testing.expectEqualStrings("original body\n", pane.file.?.content);
+ // Esc keeps the draft pending; a second drops it.
p.update(.{ .key = .{ .cp = if (commit) Key.enter else Key.escape } });
+ if (!commit) p.update(.{ .key = .{ .cp = Key.escape } });
try std.testing.expect(pane.focus == .body);
try std.testing.expect(pane.prompt == .none);
try std.testing.expectEqualStrings(if (commit) "/new name.zig" else original, pane.file.?.path);
@@ -1649,6 +1653,9 @@ test "pane filename grapheme edits and invalid empty commits preserve the buffer
try std.testing.expect(pane.prompt == .name);
try std.testing.expectEqualStrings("/test.txt", pane.file.?.path);
try std.testing.expectEqualStrings("untouched\n", pane.file.?.content);
+ // Esc keeps the draft pending; a second drops it.
+ p.update(.{ .key = .{ .cp = Key.escape } });
+ try std.testing.expect(pane.prompt == .name);
p.update(.{ .key = .{ .cp = Key.escape } });
try std.testing.expect(pane.prompt == .none);
}