summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorq12321q <q12321q@gmail.com>2017-05-18 10:31:12 +0200
committerw0rp <w0rp@users.noreply.github.com>2017-05-18 09:31:12 +0100
commitcdf0fb39e532b0e0ed67ac8dcd088b58d822b74e (patch)
tree912b27dfcf41db0f879d9f6ae214b2aca9ef2af0 /test
parent3ca70cb841aa352eef56545e72188d0420cfa3f2 (diff)
downloadale-cdf0fb39e532b0e0ed67ac8dcd088b58d822b74e.zip
Add xmllint linter (#559)
* Add xmllint linter for xml
Diffstat (limited to 'test')
-rw-r--r--test/command_callback/test_xmllint_command_callback.vader25
-rw-r--r--test/handler/test_xmllint_handler.vader30
2 files changed, 55 insertions, 0 deletions
diff --git a/test/command_callback/test_xmllint_command_callback.vader b/test/command_callback/test_xmllint_command_callback.vader
new file mode 100644
index 00000000..7c0b1963
--- /dev/null
+++ b/test/command_callback/test_xmllint_command_callback.vader
@@ -0,0 +1,25 @@
+Before:
+ runtime ale_linters/xml/xmllint.vim
+
+After:
+ call ale#linter#Reset()
+ let g:ale_xml_xmllint_options = ''
+ let g:ale_xml_xmllint_executable = 'xmllint'
+
+Execute(The xml xmllint command callback should return the correct default string):
+ AssertEqual '''xmllint'' --noout -',
+ \ join(split(ale_linters#xml#xmllint#GetCommand(1)))
+
+Execute(The xml xmllint command callback should let you set options):
+ let g:ale_xml_xmllint_options = '--xinclude --postvalid'
+
+ AssertEqual '''xmllint'' --xinclude --postvalid --noout -',
+ \ join(split(ale_linters#xml#xmllint#GetCommand(1)))
+
+Execute(The xmllint executable should be configurable):
+ let g:ale_xml_xmllint_executable = '~/.local/bin/xmllint'
+
+ AssertEqual '~/.local/bin/xmllint', ale_linters#xml#xmllint#GetExecutable(1)
+ AssertEqual '''~/.local/bin/xmllint'' --noout -',
+ \ join(split(ale_linters#xml#xmllint#GetCommand(1)))
+
diff --git a/test/handler/test_xmllint_handler.vader b/test/handler/test_xmllint_handler.vader
new file mode 100644
index 00000000..4a377ab3
--- /dev/null
+++ b/test/handler/test_xmllint_handler.vader
@@ -0,0 +1,30 @@
+Before:
+ runtime ale_linters/xml/xmllint.vim
+
+Execute(The xmllint handler should parse error messages correctly):
+ AssertEqual
+ \ [
+ \ {
+ \ 'lnum': 1,
+ \ 'col': 22,
+ \ 'type': 'W',
+ \ 'text': 'warning: Unsupported version ''dummy'''
+ \ },
+ \ {
+ \ 'lnum': 34,
+ \ 'col': 1,
+ \ 'type': 'E',
+ \ 'text': 'parser error : Start tag expected, ''<'' not found'
+ \ }
+ \ ],
+ \ ale_linters#xml#xmllint#Handle(1, [
+ \ 'path/to/file.xml:1: warning: Unsupported version ''dummy''',
+ \ '<?xml version="dummy"?>',
+ \ ' ^',
+ \ '-:34: parser error : Start tag expected, ''<'' not found',
+ \ 'blahblah>',
+ \ '^'
+ \ ])
+
+After:
+ call ale#linter#Reset()