/ test / test_maven_find_executable.vader
test_maven_find_executable.vader
 1  Before:
 2    Save $PATH
 3    Save $PATHEXT
 4  
 5    " Count the maven executable without .exe as executable on Windows
 6    let $PATHEXT = '.'
 7  
 8    call ale#test#SetDirectory('/testplugin/test')
 9    runtime ale_linters/java/javac.vim
10    let g:expected_wrapper = ''
11    if has('unix')
12      let g:expected_wrapper = 'mvnw'
13    else
14      let g:expected_wrapper = 'mvnw.cmd'
15    endif
16  
17  After:
18    Restore
19  
20    unlet! g:expected_wrapper
21  
22    call ale#test#RestoreDirectory()
23    call ale#linter#Reset()
24  
25  Execute(Should return 'mvnw' if found in parent directory):
26    call ale#test#SetFilename('test-files/maven/maven-java-project/module1/src/main/java/dummy1.java')
27  
28    AssertEqual
29    \ ale#path#Simplify(g:dir . '/test-files/maven/maven-java-project/module1/' . g:expected_wrapper),
30    \ ale#maven#FindExecutable(bufnr(''))
31  
32  Execute(Should return 'mvn' if 'mvnw' not found in parent directory):
33    call ale#test#SetFilename('test-files/maven/maven-java-project/module2/src/main/java/dummy2.java')
34    let $PATH .= (has('win32') ? ';' : ':')
35    \ . ale#path#Simplify(g:dir . '/test-files/maven')
36  
37    AssertEqual
38    \ 'mvn',
39    \ ale#maven#FindExecutable(bufnr(''))
40  
41  Execute(Should return empty string if 'mvnw' not in parent directory and mvn not in path):
42    call ale#test#SetFilename('mvn-test-files/java-maven-project/module2/src/main/java/dummy2.java')
43  
44    AssertEqual
45    \ '',
46    \ ale#gradle#FindExecutable(bufnr(''))