Test table display for fish too

This commit is contained in:
David Dworken 2022-10-30 18:40:25 -07:00
parent de99d60f7c
commit cdd7f60f0c
3 changed files with 21 additions and 8 deletions

View File

@ -1698,6 +1698,7 @@ func TestFish(t *testing.T) {
installHishtory(t, tester, "") installHishtory(t, tester, "")
// Test recording in fish // Test recording in fish
testutils.Check(t, os.Chdir("/"))
out := captureTerminalOutputWithShellName(t, tester, "fish", []string{ out := captureTerminalOutputWithShellName(t, tester, "fish", []string{
"echo SPACE foo ENTER", "echo SPACE foo ENTER",
"ENTER", "ENTER",
@ -1709,11 +1710,17 @@ func TestFish(t *testing.T) {
}) })
compareGoldens(t, out, "TestFish-capturedPane") compareGoldens(t, out, "TestFish-capturedPane")
// Check export
out = tester.RunInteractiveShell(t, `hishtory export | grep -v pipefail | grep -v ps`) out = tester.RunInteractiveShell(t, `hishtory export | grep -v pipefail | grep -v ps`)
expectedOutput := "echo foo\necho bar\nls /tmp/\nls /bar/ &\n" expectedOutput := "echo foo\necho bar\nls /tmp/\nls /bar/ &\n"
if diff := cmp.Diff(expectedOutput, out); diff != "" { if diff := cmp.Diff(expectedOutput, out); diff != "" {
t.Fatalf("hishtory export mismatch (-expected +got):\n%s\nout=%#v", diff, out) t.Fatalf("hishtory export mismatch (-expected +got):\n%s\nout=%#v", diff, out)
} }
// Check a table to see some other metadata
tester.RunInteractiveShell(t, `hishtory config-set displayed-columns CWD Hostname 'Exit Code' Command`)
out = hishtoryQuery(t, tester, "-pipefail")
compareGoldens(t, out, "TestFish-table")
} }
func normalizeHostnames(data string) string { func normalizeHostnames(data string) string {

View File

@ -1,19 +1,19 @@
Welcome to fish, the friendly interactive shell Welcome to fish, the friendly interactive shell
Type help for instructions on how to use fish Type help for instructions on how to use fish
david@Davids-MacBook-Air ~/c/hishtory (master)> echo foo david@Davids-MacBook-Air /> echo foo
foo foo
david@Davids-MacBook-Air ~/c/hishtory (master)> david@Davids-MacBook-Air />
david@Davids-MacBook-Air ~/c/hishtory (master)> echo baz david@Davids-MacBook-Air /> echo baz
baz baz
david@Davids-MacBook-Air ~/c/hishtory (master)> echo bar david@Davids-MacBook-Air /> echo bar
bar bar
david@Davids-MacBook-Air ~/c/hishtory (master)> ls /tmp/ david@Davids-MacBook-Air /> ls /tmp/
client* com.google.Keystone/ powerlog/ tmux-501/ client* com.google.Keystone/ powerlog/ tmux-501/
com.apple.launchd.vphqfEpkYH/ fseventsd-uuid server* com.apple.launchd.vphqfEpkYH/ fseventsd-uuid server*
david@Davids-MacBook-Air ~/c/hishtory (master)> echo foobar david@Davids-MacBook-Air /> echo foobar
foobar foobar
david@Davids-MacBook-Air ~/c/hishtory (master)> ls /bar/ & david@Davids-MacBook-Air /> ls /bar/ &
ls: /bar/: No such file or directory ls: /bar/: No such file or directory
fish: Job 1, 'ls /bar/ &' has ended fish: Job 1, 'ls /bar/ &' has ended
david@Davids-MacBook-Air ~/c/hishtory (master) [1]> david@Davids-MacBook-Air / [1]>

View File

@ -0,0 +1,6 @@
CWD Hostname Exit Code Command
/ ghaction-runner-hostname 0 hishtory config-set displayed-columns CWD Hostname 'Exit Code' Command
/ ghaction-runner-hostname 1 ls /bar/ &
/ ghaction-runner-hostname 0 ls /tmp/
/ ghaction-runner-hostname 0 echo bar
/ ghaction-runner-hostname 0 echo foo