]> git.giacomolli.uk - onechat/blobdiff - tools_test.go
Name private helpers for their owning feature
[onechat] / tools_test.go
index 23507f61785bb3e962529169274d9670999cf4aa..3075cbfef2f2ee217de06386a1d9296279daab9c 100644 (file)
@@ -59,22 +59,22 @@ func TestShellRunsInTheWorkingDirectory(t *testing.T) {
                output  string
        }{
                {
-                       name:    "working directory",
+                       name:    "runs in the configured working directory",
                        command: "pwd",
                        output:  dir + "\n",
                },
                {
-                       name:    "error output and exit status",
+                       name:    "returns both streams and the failed exit status",
                        command: "echo out; echo err >&2; exit 3",
                        output:  "out\nerr\n\n[exit status 3]",
                },
                {
-                       name:    "no output",
+                       name:    "marks an empty successful output",
                        command: "true",
                        output:  "(no output)",
                },
                {
-                       name:    "no input",
+                       name:    "closes standard input without user input",
                        command: "cat",
                        output:  "(no output)",
                },
@@ -140,7 +140,7 @@ func TestZoomAndDateReadTheChat(t *testing.T) {
                output    string
        }{
                {
-                       name:      "one message whole",
+                       name:      "returns one message without shortening it",
                        arguments: `{"id":2,"n":1}`,
                        output:    "user: two",
                },
@@ -150,12 +150,12 @@ func TestZoomAndDateReadTheChat(t *testing.T) {
                        output:    "0+2|user: zero user: one\n2+2|user: two user: three",
                },
                {
-                       name:      "an id that is not a multiple of n",
+                       name:      "rejects an unaligned line ID",
                        arguments: `{"id":1,"n":2}`,
                        output:    "error: line 1+2 does not exist: n must be a power of 2 and id a multiple of n",
                },
                {
-                       name:      "a line past the last message",
+                       name:      "rejects a line beyond the chat",
                        arguments: `{"id":4,"n":4}`,
                        output:    "error: line 4+4 goes past the last message, 3",
                },
@@ -244,6 +244,13 @@ func newTestToolbox(t *testing.T, log ToolLog, dir string) *Toolbox {
        }
 }
 
+func (r *ToolRecordingLog) Events() []string {
+       r.mutex.Lock()
+       defer r.mutex.Unlock()
+
+       return append([]string(nil), r.events...)
+}
+
 func (r *ToolRecordingLog) Append(kind, text string) (Message, error) {
        r.mutex.Lock()
        defer r.mutex.Unlock()
@@ -267,10 +274,3 @@ func (r *ToolRecordingLog) Flush(ctx context.Context) error {
 
        return ctx.Err()
 }
-
-func (r *ToolRecordingLog) Events() []string {
-       r.mutex.Lock()
-       defer r.mutex.Unlock()
-
-       return append([]string(nil), r.events...)
-}