summaryrefslogtreecommitdiff
path: root/src/ninep
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-29 03:41:09 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:15 -0300
commitf5f721bfef8cce1b82103e653607eea2110fc489 (patch)
treed8f704699934faa5edaa6284c5e408af123a63e9 /src/ninep
parentd5e0ce3c7e23e1931fc6e17c4d95b9105f97bddf (diff)
downloadpardes-f5f721bfef8cce1b82103e653607eea2110fc489.tar.gz
pardes-f5f721bfef8cce1b82103e653607eea2110fc489.zip
Repl's unknown-language refusal names a few whole and points to the rest
The refusal listed every language and was clipped to fit, ending mid-word. It now names six, those that start as the word did first (pithon: python), says how many more, and points at docs/tags.md, which lists them all. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/ninep')
-rw-r--r--src/ninep/ctl.zig9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/ninep/ctl.zig b/src/ninep/ctl.zig
index dd382290..5921198e 100644
--- a/src/ninep/ctl.zig
+++ b/src/ninep/ctl.zig
@@ -1514,3 +1514,12 @@ test "size sets the screen of a session no frontend is attached to, and only of
try testing.expect(std.mem.indexOf(u8, wr(p, root_ctl, "size 80 8\n").reply.ename, "too small for the panes") != null);
try testing.expectEqual(@as(u16, 40), p.screen_h);
}
+
+test "Repl with no such language names a few whole, and where the rest are" {
+ const p = try th.withTerm(testing.allocator);
+ defer p.deinit();
+ const refused = wr(p, Node.of(serialOf(p), .ctl), "Repl zzlang\n");
+ try testing.expectEqual(Status.err, refused.reply.status);
+ try testing.expect(std.mem.indexOf(u8, refused.reply.ename, "Repl: no language \"zzlang\"; - or one like zig ada bash c c_sharp clojure (") != null);
+ try testing.expect(std.mem.indexOf(u8, refused.reply.ename, " more: docs/tags.md, Repl)") != null);
+}