summaryrefslogtreecommitdiff
path: root/complete_test.go
diff options
context:
space:
mode:
authorEyal Posener <[email protected]>2017-05-05 21:57:21 +0300
committerEyal Posener <[email protected]>2017-05-05 21:57:21 +0300
commit5e07cbd4c20a5a3bb5bc84148dc4d4ebffa3d033 (patch)
tree14562796afbc9b220836384339ae80403aa03076 /complete_test.go
parent6311b602abc0f3c0a854c244fca147101b623eba (diff)
Add file completion flag
Diffstat (limited to 'complete_test.go')
-rw-r--r--complete_test.go26
1 files changed, 20 insertions, 6 deletions
diff --git a/complete_test.go b/complete_test.go
index 55934bd..3485a99 100644
--- a/complete_test.go
+++ b/complete_test.go
@@ -9,7 +9,9 @@ import (
func TestCompleter_Complete(t *testing.T) {
t.Parallel()
- os.Setenv(envDebug, "1")
+ if testing.Verbose() {
+ os.Setenv(envDebug, "1")
+ }
c := Completer{
Command: Command{
@@ -30,9 +32,9 @@ func TestCompleter_Complete(t *testing.T) {
Flags: map[string]FlagOptions{
"-h": FlagNoFollow,
"-global1": FlagUnknownFollow,
+ "-o": FlagFileFilter("./gocomplete/*.go"),
},
},
- log: t.Logf,
}
allGlobals := []string{}
@@ -53,7 +55,7 @@ func TestCompleter_Complete(t *testing.T) {
},
{
args: "-",
- want: []string{"-h", "-global1"},
+ want: []string{"-h", "-global1", "-o"},
},
{
args: "-h ",
@@ -77,11 +79,11 @@ func TestCompleter_Complete(t *testing.T) {
},
{
args: "sub1 ",
- want: []string{"-flag1", "-flag2", "-h", "-global1"},
+ want: []string{"-flag1", "-flag2", "-h", "-global1", "-o"},
},
{
args: "sub2 ",
- want: []string{"-flag2", "-flag3", "-h", "-global1"},
+ want: []string{"-flag2", "-flag3", "-h", "-global1", "-o"},
},
{
args: "sub1 -fl",
@@ -97,7 +99,7 @@ func TestCompleter_Complete(t *testing.T) {
},
{
args: "sub1 -flag2 ",
- want: []string{"-flag1", "-flag2", "-h", "-global1"},
+ want: []string{"-flag1", "-flag2", "-h", "-global1", "-o"},
},
{
args: "-no-such-flag",
@@ -115,6 +117,18 @@ func TestCompleter_Complete(t *testing.T) {
args: "no-such-command ",
want: allGlobals,
},
+ {
+ args: "-o ",
+ want: []string{"./gocomplete/complete.go"},
+ },
+ {
+ args: "-o goco",
+ want: []string{"./gocomplete/complete.go"},
+ },
+ {
+ args: "-o ./goco",
+ want: []string{"./gocomplete/complete.go"},
+ },
}
for _, tt := range tests {