diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-30 19:19:00 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:17 -0300 |
| commit | 045e9e748d02c0417263655999b459ad351916d7 (patch) | |
| tree | fc85b5a0e257abd8ae86cdf9459f18f14a4b7841 /src/ninep/ctl.zig | |
| parent | 3189900c13b98298776d0da8dcbcb4e0d88858cf (diff) | |
| download | pardes-045e9e748d02c0417263655999b459ad351916d7.tar.gz pardes-045e9e748d02c0417263655999b459ad351916d7.zip | |
Save and Save path on a PDF or image pane are refused, "a PDF pane has no text to save", never a silent success
A bare Save on a PDF or an image did nothing, and `Save path` returned
without writing, both answered as done. Such a pane shows a file it does
not hold as text, so there is nothing of its own to write. Save now
refuses it with why ("Save: a PDF pane has no text to save", or an image
pane's), and so fails the write that asked.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/ninep/ctl.zig')
| -rw-r--r-- | src/ninep/ctl.zig | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/ninep/ctl.zig b/src/ninep/ctl.zig index 118b6488..a0a363b5 100644 --- a/src/ninep/ctl.zig +++ b/src/ninep/ctl.zig @@ -1658,6 +1658,19 @@ test "Save path of a file pane logs a save record naming that path" { try testing.expect(th.logHas(p, try std.fmt.bufPrint(&want, "save {d} /tmp/pardes-save-copy.txt\n", .{serial}))); } +test "Save and Save path on an image pane are refused with why, never a silent success" { + const p = try withFile(testing.allocator, "x\n"); + defer p.deinit(); + const id = p.freeSlot().?; + const doc = try p.newDocPane(id); + doc.image = .{ .path = try p.gpa.dupe(u8, "/tmp/pardes-pic.ppm") }; + for ([_][]const u8{ "Save\n", "Save /tmp/pardes-copy.ppm\n" }) |line| { + const r = wr(p, Node.of(doc.serial, .ctl), line); + try testing.expectEqual(Status.err, r.reply.status); + try testing.expectEqualStrings("Save: an image pane has no text to save", r.reply.ename); + } +} + test "exec Save writes the named file through the host" { const gpa = testing.allocator; const p = try withFile(gpa, "one\ntwo\n"); |
