summaryrefslogtreecommitdiff
path: root/test/linter/test_eclipselsp.vader
diff options
context:
space:
mode:
authorw0rp <devw0rp@gmail.com>2021-03-21 00:21:49 +0000
committerw0rp <devw0rp@gmail.com>2021-03-21 00:25:33 +0000
commitf7852dbd0a063d6d82ee17a5057fea53cb79b21d (patch)
tree00b98a3c668af9313eedd6936475c81eeef7e9b8 /test/linter/test_eclipselsp.vader
parent35caaecc9fc5822f0474e913d0b7655048fd30ee (diff)
downloadale-f7852dbd0a063d6d82ee17a5057fea53cb79b21d.zip
#3633 - Move linter tests into test/linter
Diffstat (limited to 'test/linter/test_eclipselsp.vader')
-rw-r--r--test/linter/test_eclipselsp.vader111
1 files changed, 111 insertions, 0 deletions
diff --git a/test/linter/test_eclipselsp.vader b/test/linter/test_eclipselsp.vader
new file mode 100644
index 00000000..6bbc4053
--- /dev/null
+++ b/test/linter/test_eclipselsp.vader
@@ -0,0 +1,111 @@
+Before:
+ call ale#assert#SetUpLinterTest('java', 'eclipselsp')
+ call ale#test#SetFilename('dummy.java')
+
+ let b:ale_java_eclipselsp_path = '/home/user/eclipse.dst.ls'
+
+ let b:cfg = ale#path#Simplify(g:dir . '/../config_linux')
+
+ if has('win32')
+ let b:cfg = ale#path#Simplify(g:dir . '/../config_win')
+ elseif has('macunix')
+ let b:cfg = ale#path#Simplify(g:dir . '/../config_mac')
+ endif
+
+After:
+ unlet! b:ale_java_eclipselsp_path
+ unlet! b:cfg
+
+ call ale#assert#TearDownLinterTest()
+
+Execute(VersionCheck should return correct version):
+
+ " OpenJDK Java 1.8
+ AssertEqual [1, 8, 0], ale_linters#java#eclipselsp#VersionCheck([
+ \ 'openjdk version "1.8.0_191"',
+ \ 'OpenJDK Runtime Environment (build 1.8.0_191-8u191-b12-0ubuntu0.18.04.1-b12)',
+ \ 'OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)'
+ \])
+
+ " OpenJDK Java 10
+ AssertEqual [10, 0, 2], ale_linters#java#eclipselsp#VersionCheck([
+ \ 'openjdk version "10.0.2" 2018-07-17',
+ \ 'OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4)',
+ \ 'OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4, mixed mode)'
+ \])
+
+ " Oracle Java 1.8
+ AssertEqual [1, 8, 0], ale_linters#java#eclipselsp#VersionCheck([
+ \ 'java version "1.8.0_161"',
+ \ 'Java(TM) SE Runtime Environment (build 1.8.0_161-b12)',
+ \ 'Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)'
+ \])
+
+ " Oracle Java 10
+ AssertEqual [10, 0, 1], ale_linters#java#eclipselsp#VersionCheck([
+ \ 'java version "10.0.1" 2018-04-17',
+ \ 'Java(TM) SE Runtime Environment 18.3 (build 10.0.1+10)',
+ \ 'Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.1+10, mixed mode)'
+ \])
+
+ AssertEqual [], ale_linters#java#eclipselsp#VersionCheck(['x'])
+
+ AssertEqual [], ale_linters#java#eclipselsp#VersionCheck([])
+
+Execute(The eclipselsp callback should return the correct default value):
+ let cmd = [ ale#Escape('java'),
+ \ '',
+ \ '-Declipse.application=org.eclipse.jdt.ls.core.id1',
+ \ '-Dosgi.bundles.defaultStartLevel=4',
+ \ '-Declipse.product=org.eclipse.jdt.ls.core.product',
+ \ '-Dlog.level=ALL',
+ \ '-noverify',
+ \ '-Xmx1G',
+ \ '-jar',
+ \ ale#Escape(''),
+ \ '-configuration',
+ \ ale#Escape(b:cfg),
+ \ '-data',
+ \ ale#Escape(ale#path#Simplify(''))
+ \]
+ AssertLinter 'java', join(cmd, ' ')
+
+Execute(The eclipselsp callback should allow custom executable):
+ let b:ale_java_eclipselsp_executable='/bin/foobar'
+ let cmd = [ ale#Escape('/bin/foobar'),
+ \ '',
+ \ '-Declipse.application=org.eclipse.jdt.ls.core.id1',
+ \ '-Dosgi.bundles.defaultStartLevel=4',
+ \ '-Declipse.product=org.eclipse.jdt.ls.core.product',
+ \ '-Dlog.level=ALL',
+ \ '-noverify',
+ \ '-Xmx1G',
+ \ '-jar',
+ \ ale#Escape(''),
+ \ '-configuration',
+ \ ale#Escape(b:cfg),
+ \ '-data',
+ \ ale#Escape(ale#path#Simplify(''))
+ \]
+ AssertLinter '/bin/foobar', join(cmd, ' ')
+
+Execute(The eclipselsp callback should allow custom configuration path and javaagent):
+ let b:ale_java_eclipselsp_config_path = '/home/config'
+ let b:ale_java_eclipselsp_javaagent = '/home/lombok.jar /home/lombok2.jar'
+ let cmd = [ ale#Escape('java'),
+ \ ale#Escape('-javaagent:/home/lombok.jar'),
+ \ ale#Escape('-javaagent:/home/lombok2.jar'),
+ \ '-Declipse.application=org.eclipse.jdt.ls.core.id1',
+ \ '-Dosgi.bundles.defaultStartLevel=4',
+ \ '-Declipse.product=org.eclipse.jdt.ls.core.product',
+ \ '-Dlog.level=ALL',
+ \ '-noverify',
+ \ '-Xmx1G',
+ \ '-jar',
+ \ ale#Escape(''),
+ \ '-configuration',
+ \ ale#Escape(ale#path#Simplify('/home/config')),
+ \ '-data',
+ \ ale#Escape(ale#path#Simplify(''))
+ \]
+ AssertLinter 'java', join(cmd, ' ')