@@ -304,12 +304,18 @@ func Test_syntax_arg_skipped()
304304 syn clear
305305endfunc
306306
307- func Test_invalid_arg ()
307+ func Test_syntax_invalid_arg ()
308308 call assert_fails (' syntax case asdf' , ' E390:' )
309309 if has (' conceal' )
310310 call assert_fails (' syntax conceal asdf' , ' E390:' )
311311 endif
312312 call assert_fails (' syntax spell asdf' , ' E390:' )
313+ call assert_fails (' syntax clear @ABCD' , ' E391:' )
314+ call assert_fails (' syntax include @Xxx' , ' E397:' )
315+ call assert_fails (' syntax region X start="{"' , ' E399:' )
316+ call assert_fails (' syntax sync x' , ' E404:' )
317+ call assert_fails (' syntax keyword Abc a[' , ' E789:' )
318+ call assert_fails (' syntax keyword Abc a[bc]d' , ' E890:' )
313319endfunc
314320
315321func Test_syn_sync ()
@@ -378,3 +384,20 @@ func Test_ownsyntax_completion()
378384 call feedkeys (" :ownsyntax java\<C-A>\<C-B> \" \<CR> " , ' tx' )
379385 call assert_equal (' "ownsyntax java javacc javascript' , @: )
380386endfunc
387+
388+ func Test_highlight_invalid_arg ()
389+ if has (' gui_running' )
390+ call assert_fails (' hi XXX guifg=xxx' , ' E254:' )
391+ endif
392+ call assert_fails (' hi DoesNotExist' , ' E411:' )
393+ call assert_fails (' hi link' , ' E412:' )
394+ call assert_fails (' hi link a' , ' E412:' )
395+ call assert_fails (' hi link a b c' , ' E413:' )
396+ call assert_fails (' hi XXX =' , ' E415:' )
397+ call assert_fails (' hi XXX cterm' , ' E416:' )
398+ call assert_fails (' hi XXX cterm=' , ' E417:' )
399+ call assert_fails (' hi XXX cterm=DoesNotExist' , ' E418:' )
400+ call assert_fails (' hi XXX ctermfg=DoesNotExist' , ' E421:' )
401+ call assert_fails (' hi XXX xxx=White' , ' E423:' )
402+ endfunc
403+
0 commit comments