diff options
author | Jhon Honce <jhonce@redhat.com> | 2020-08-03 09:18:49 -0700 |
---|---|---|
committer | Jhon Honce <jhonce@redhat.com> | 2020-10-02 06:58:02 -0700 |
commit | c0757374bf187edcf4ae8c4811e162e27794ebf8 (patch) | |
tree | 6786a36f86d1a00dc28983ae8580d014ecfc6b4d /cmd/podman/report/format_test.go | |
parent | 14fd7b4d6ac18aaa5705990f3dd0ed13477258ad (diff) | |
download | podman-c0757374bf187edcf4ae8c4811e162e27794ebf8.tar.gz podman-c0757374bf187edcf4ae8c4811e162e27794ebf8.tar.bz2 podman-c0757374bf187edcf4ae8c4811e162e27794ebf8.zip |
Restore "table" --format from V1
* --format "table {{.field..." will print fields out in a table with
headings. Table keyword is removed, spaces between fields are
converted to tabs
* Update parse.MatchesJSONFormat()'s regex to be more inclusive
* Add report.Headers(), obtain all the field names to be used as
column headers, a map of field name to column headers may be provided
to override the field names
* Update several commands to use new functions
Signed-off-by: Jhon Honce <jhonce@redhat.com>
Diffstat (limited to 'cmd/podman/report/format_test.go')
-rw-r--r-- | cmd/podman/report/format_test.go | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/cmd/podman/report/format_test.go b/cmd/podman/report/format_test.go new file mode 100644 index 000000000..7dd62e899 --- /dev/null +++ b/cmd/podman/report/format_test.go @@ -0,0 +1,35 @@ +package report + +import ( + "strings" + "testing" +) + +func TestNormalizeFormat(t *testing.T) { + cases := []struct { + format string + expected string + }{ + {"table {{.ID}}", "{{.ID}}\n"}, + {"table {{.ID}} {{.C}}", "{{.ID}}\t{{.C}}\n"}, + {"{{.ID}}", "{{.ID}}\n"}, + {"{{.ID}}\n", "{{.ID}}\n"}, + {"{{.ID}} {{.C}}", "{{.ID}} {{.C}}\n"}, + {"\t{{.ID}}", "\t{{.ID}}\n"}, + {`\t` + "{{.ID}}", "\t{{.ID}}\n"}, + {"table {{.ID}}\t{{.C}}", "{{.ID}}\t{{.C}}\n"}, + {"{{.ID}} table {{.C}}", "{{.ID}} table {{.C}}\n"}, + } + for _, tc := range cases { + tc := tc + + label := strings.ReplaceAll(tc.format, " ", "<sp>") + t.Run("NormalizeFormat/"+label, func(t *testing.T) { + t.Parallel() + actual := NormalizeFormat(tc.format) + if actual != tc.expected { + t.Errorf("Expected %q, actual %q", tc.expected, actual) + } + }) + } +} |