Skip to content

Commit 35c4e6b

Browse files
committed
Add some vader tests for completion feature
I want to improve file/path completion, so add some tests to cover existing behaviour (at least existing behaviour as I understand it).
1 parent 4eb0ced commit 35c4e6b

File tree

2 files changed

+57
-0
lines changed

2 files changed

+57
-0
lines changed

test/feature/completion.vader

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
Before:
2+
enew!
3+
only!
4+
cd include/completion
5+
let w:testing = 1
6+
7+
After:
8+
cd -
9+
10+
Execute (flags, match all):
11+
Assert len(grepper#complete('-', '', v:null)) > 3
12+
AssertEqual count(grepper#complete('-', '', v:null), '-cword '), 1
13+
AssertEqual count(grepper#complete('-', '', v:null), '-grepprg '), 1
14+
AssertEqual count(grepper#complete('-', '', v:null), '-tool '), 1
15+
16+
Execute (flags, match one):
17+
AssertEqual grepper#complete('-noquickf', '', v:null), ['-noquickfix ']
18+
19+
Execute (flags, match some):
20+
Assert len(grepper#complete('-no', '', v:null)) > 2
21+
AssertEqual count(grepper#complete('-no', '', v:null), '-switch '), 0
22+
AssertEqual count(grepper#complete('-no', '', v:null), '-noswitch '), 1
23+
24+
Execute (flags, -dir options):
25+
Assert len(grepper#complete('', 'Grepper -dir ', v:null)) > 2
26+
AssertEqual count(grepper#complete('', 'Grepper -dir ', v:null), 'cwd '), 1
27+
AssertEqual count(grepper#complete('', 'Grepper -dir ', v:null), 'repo '), 1
28+
29+
Execute (flags, -stop completion):
30+
Assert grepper#complete('', 'Grepper -stop ', v:null)[0] =~# '\d\+'
31+
32+
Execute (flags, -tool options):
33+
Assert len(grepper#complete('', 'Grepper -tool ', v:null)) > 1
34+
AssertEqual count(grepper#complete('', 'Grepper -tool ', v:null), 'grep '), 1
35+
36+
Execute (relative path, empty string):
37+
AssertEqual grepper#complete('', '', v:null), ['./foo/']
38+
39+
Execute (relative path, whitespace only):
40+
AssertEqual grepper#complete(' ', '', v:null), [' ./foo/']
41+
42+
Execute (sub-path, ./ exact match):
43+
AssertEqual grepper#complete('./', '', v:null), ['./foo/']
44+
45+
Execute (sub-path, ./ and word chars):
46+
AssertEqual grepper#complete('./f', '', v:null), ['./foo/']
47+
48+
Execute (nested sub-path, e.g. ./foo/):
49+
AssertEqual grepper#complete('./foo/', '', v:null), ['./foo/bar/']
50+
51+
Execute (absolute path, / exact match):
52+
AssertEqual count(grepper#complete('/', '', v:null), '/bin/'), 1
53+
AssertEqual count(grepper#complete('/', '', v:null), '/var/'), 1
54+
55+
Execute (absolute path, / and word chars):
56+
AssertEqual count(grepper#complete('/b', '', v:null), '/bin/'), 1
57+
AssertEqual count(grepper#complete('/b', '', v:null), '/var/'), 0

test/include/completion/foo/bar/baz

Whitespace-only changes.

0 commit comments

Comments
 (0)