summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorw0rp <devw0rp@gmail.com>2021-03-19 22:29:06 +0000
committerw0rp <devw0rp@gmail.com>2021-03-19 22:29:06 +0000
commit3838ae118d8f05fa1b1be7952a1c8aa3055d6728 (patch)
treecd4c7ce2c78092b348862b5cc1b1617286a8ffbe /test
parent8319e0f8c7e11a6c5f6aa58fb7669f6ccb2651df (diff)
downloadale-3838ae118d8f05fa1b1be7952a1c8aa3055d6728.zip
Add desktop-file-validate
Diffstat (limited to 'test')
-rw-r--r--test/command_callback/test_desktop_file_validate.vader15
-rw-r--r--test/handler/test_desktop_file_validate_handler.vader26
2 files changed, 41 insertions, 0 deletions
diff --git a/test/command_callback/test_desktop_file_validate.vader b/test/command_callback/test_desktop_file_validate.vader
new file mode 100644
index 00000000..4a49057b
--- /dev/null
+++ b/test/command_callback/test_desktop_file_validate.vader
@@ -0,0 +1,15 @@
+Before:
+ call ale#assert#SetUpLinterTest('desktop', 'desktop_file_validate')
+
+After:
+ call ale#assert#TearDownLinterTest()
+
+Execute(The default command should be correct):
+ AssertLinter 'desktop-file-validate',
+ \ ale#Escape('desktop-file-validate') . ' %t'
+
+Execute(Extra options should work):
+ let b:ale_desktop_desktop_file_validate_options = '--warn-kde'
+
+ AssertLinter 'desktop-file-validate',
+ \ ale#Escape('desktop-file-validate') . ' --warn-kde %t'
diff --git a/test/handler/test_desktop_file_validate_handler.vader b/test/handler/test_desktop_file_validate_handler.vader
new file mode 100644
index 00000000..88163433
--- /dev/null
+++ b/test/handler/test_desktop_file_validate_handler.vader
@@ -0,0 +1,26 @@
+Before:
+ runtime ale_linters/desktop/desktop_file_validate.vim
+
+After:
+ call ale#linter#Reset()
+
+Execute(The desktop-file-validate handler should parse lines correctly):
+ AssertEqual
+ \ [
+ \ {
+ \ 'lnum': 1,
+ \ 'col': 1,
+ \ 'type': 'W',
+ \ 'text': 'key "TerminalOptions" in group "Desktop Entry" is deprecated',
+ \ },
+ \ {
+ \ 'lnum': 1,
+ \ 'col': 1,
+ \ 'type': 'E',
+ \ 'text': 'action "new-private-window" is defined, but there is no matching "Desktop Action new-private-window" group',
+ \ },
+ \ ],
+ \ ale_linters#desktop#desktop_file_validate#Handle(bufnr(''), [
+ \ 'foo.desktop: warning: key "TerminalOptions" in group "Desktop Entry" is deprecated',
+ \ 'foo.desktop: error: action "new-private-window" is defined, but there is no matching "Desktop Action new-private-window" group',
+ \ ])