Some checks failed
		
		
	
	Detach Plugins / check (FlyGrep.vim) (push) Has been cancelled
				
			Detach Plugins / check (GitHub.vim) (push) Has been cancelled
				
			Detach Plugins / check (JavaUnit.vim) (push) Has been cancelled
				
			Detach Plugins / check (SourceCounter.vim) (push) Has been cancelled
				
			Detach Plugins / check (cpicker.nvim) (push) Has been cancelled
				
			Detach Plugins / check (dein-ui.vim) (push) Has been cancelled
				
			Detach Plugins / check (git.vim) (push) Has been cancelled
				
			Detach Plugins / check (iedit.vim) (push) Has been cancelled
				
			Detach Plugins / check (scrollbar.vim) (push) Has been cancelled
				
			Detach Plugins / check (vim-chat) (push) Has been cancelled
				
			Detach Plugins / check (vim-cheat) (push) Has been cancelled
				
			Detach Plugins / check (vim-todo) (push) Has been cancelled
				
			Detach Plugins / check (xmake.vim) (push) Has been cancelled
				
			test / Linux (nvim, nightly) (push) Has been cancelled
				
			test / Linux (nvim, v0.3.8) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.2) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.3) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.4) (push) Has been cancelled
				
			test / Linux (nvim, v0.5.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.5.1) (push) Has been cancelled
				
			test / Linux (nvim, v0.6.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.6.1) (push) Has been cancelled
				
			test / Linux (nvim, v0.7.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.7.2) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.1) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.2) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.3) (push) Has been cancelled
				
			test / Linux (nvim, v0.9.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.9.1) (push) Has been cancelled
				
			test / Linux (true, vim, v7.4.052) (push) Has been cancelled
				
			test / Linux (true, vim, v7.4.1689) (push) Has been cancelled
				
			test / Linux (true, vim, v7.4.629) (push) Has been cancelled
				
			test / Linux (true, vim, v8.0.0027) (push) Has been cancelled
				
			test / Linux (true, vim, v8.0.0183) (push) Has been cancelled
				
			test / Linux (vim, nightly) (push) Has been cancelled
				
			test / Linux (vim, v8.0.0184) (push) Has been cancelled
				
			test / Linux (vim, v8.0.1453) (push) Has been cancelled
				
			test / Linux (vim, v8.1.2269) (push) Has been cancelled
				
			test / Linux (vim, v8.2.2434) (push) Has been cancelled
				
			test / Linux (vim, v8.2.3995) (push) Has been cancelled
				
			test / Windows (nvim, nightly) (push) Has been cancelled
				
			test / Windows (nvim, v0.3.8) (push) Has been cancelled
				
			test / Windows (nvim, v0.4.2) (push) Has been cancelled
				
			test / Windows (nvim, v0.4.3) (push) Has been cancelled
				
			test / Windows (nvim, v0.4.4) (push) Has been cancelled
				
			test / Windows (nvim, v0.5.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.5.1) (push) Has been cancelled
				
			test / Windows (nvim, v0.6.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.6.1) (push) Has been cancelled
				
			test / Windows (nvim, v0.7.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.7.2) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.1) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.2) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.3) (push) Has been cancelled
				
			test / Windows (nvim, v0.9.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.9.1) (push) Has been cancelled
				
			test / Windows (vim, nightly) (push) Has been cancelled
				
			test / Windows (vim, v7.4.1185) (push) Has been cancelled
				
			test / Windows (vim, v7.4.1689) (push) Has been cancelled
				
			test / Windows (vim, v8.0.0027) (push) Has been cancelled
				
			test / Windows (vim, v8.0.1453) (push) Has been cancelled
				
			test / Windows (vim, v8.1.2269) (push) Has been cancelled
				
			test / Windows (vim, v8.2.2434) (push) Has been cancelled
				
			test / Windows (vim, v8.2.3995) (push) Has been cancelled
				
			docker / docker (push) Has been cancelled
				
			mirror / check (coding) (push) Has been cancelled
				
			mirror / check (gitee) (push) Has been cancelled
				
			mirror / check (gitlab) (push) Has been cancelled
				
			
		
			
				
	
	
		
			280 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			280 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
Include: ../include/setup.vader
 | 
						|
 | 
						|
Execute (Setup: monkeypatch autoload/neomake/highlights.vim):
 | 
						|
  " Monkeypatch to check setting of length.
 | 
						|
  runtime autoload/neomake/highlights.vim
 | 
						|
  Save g:neomake_tests_highlight_lengths
 | 
						|
  let g:neomake_tests_highlight_lengths = []
 | 
						|
 | 
						|
  function! neomake#highlights#AddHighlight(entry, ...) abort
 | 
						|
    let bufnr = get(a:entry, 'bufnr', -1)
 | 
						|
    if !has_key(g:neomake_tests_highlight_lengths, bufnr)
 | 
						|
      let g:neomake_tests_highlight_lengths[bufnr] = []
 | 
						|
    endif
 | 
						|
    call add(g:neomake_tests_highlight_lengths[bufnr],
 | 
						|
    \ [get(a:entry, 'lnum', -1), get(a:entry, 'length', -1)])
 | 
						|
  endfunction
 | 
						|
 | 
						|
Execute (vimlint: length postprocessing):
 | 
						|
  let g:neomake_tests_highlight_lengths = {}
 | 
						|
  new
 | 
						|
  noautocmd edit tests/fixtures/vim/func-with-errors.vim
 | 
						|
  let maker = neomake#makers#ft#vim#vimlint()
 | 
						|
  let maker.exe = 'cat'
 | 
						|
  let maker.args = 'tests/fixtures/vim/func-with-errors.vim.output'
 | 
						|
  let maker.append_file = 0
 | 
						|
 | 
						|
  CallNeomake 1, [maker]
 | 
						|
 | 
						|
  let bufnr = bufnr('%')
 | 
						|
  AssertEqualQf getloclist(0), [{
 | 
						|
    \ 'lnum': 2,
 | 
						|
    \ 'bufnr': bufnr,
 | 
						|
    \ 'col': 6,
 | 
						|
    \ 'valid': 1,
 | 
						|
    \ 'vcol': 0,
 | 
						|
    \ 'nr': 101,
 | 
						|
    \ 'type': 'E',
 | 
						|
    \ 'pattern': '',
 | 
						|
    \ 'text': 'undefined variable `l:something`',
 | 
						|
    \ }, {
 | 
						|
    \ 'lnum': 5,
 | 
						|
    \ 'bufnr': bufnr,
 | 
						|
    \ 'col': 9,
 | 
						|
    \ 'valid': 1,
 | 
						|
    \ 'vcol': 0,
 | 
						|
    \ 'nr': 104,
 | 
						|
    \ 'type': 'E',
 | 
						|
    \ 'pattern': '',
 | 
						|
    \ 'text': 'variable may not be initialized on some execution path: `l:foo`',
 | 
						|
    \ }]
 | 
						|
 | 
						|
  AssertEqual {string(bufnr): [[2, 11], [5, 3]]}, g:neomake_tests_highlight_lengths
 | 
						|
  bwipe
 | 
						|
 | 
						|
Execute (vint: highlights syntax error for command):
 | 
						|
  let g:neomake_tests_highlight_lengths = {}
 | 
						|
  new
 | 
						|
  file file1.vim
 | 
						|
  norm! iwhile 1
 | 
						|
  norm! oendfor
 | 
						|
  let vint_maker = neomake#makers#ft#vim#vint()
 | 
						|
  let vint_maker.exe = 'printf'
 | 
						|
  let vint_maker.args = ["file1.vim:2:1:error:E588: :endfor without :for (SyntaxError)"]
 | 
						|
  let vint_maker.append_file = 0
 | 
						|
 | 
						|
  CallNeomake 1, [vint_maker]
 | 
						|
  let bufnr = bufnr('%')
 | 
						|
  AssertEqualQf getloclist(0), [{
 | 
						|
  \ 'lnum': 2,
 | 
						|
  \ 'bufnr': bufnr,
 | 
						|
  \ 'col': 1,
 | 
						|
  \ 'valid': 1,
 | 
						|
  \ 'vcol': 0,
 | 
						|
  \ 'nr': 588,
 | 
						|
  \ 'type': 'e',
 | 
						|
  \ 'pattern': '',
 | 
						|
  \ 'text': ':endfor without :for (SyntaxError)'}]
 | 
						|
  bwipe!
 | 
						|
  AssertEqual {string(bufnr): [[2, 6]]}, g:neomake_tests_highlight_lengths
 | 
						|
 | 
						|
Execute (get_list_entries: based on example from doc):
 | 
						|
  let g:neomake_tests_highlight_lengths = {}
 | 
						|
  new
 | 
						|
  call g:NeomakeSetupAutocmdWrappers()
 | 
						|
  let buf1 = bufnr('%')
 | 
						|
  file get_list_entries_buf1
 | 
						|
 | 
						|
  let winnr = winnr()
 | 
						|
 | 
						|
  let maker = {'name': 'My maker', 'my_orig_bufnr': buf1}
 | 
						|
  function! maker.get_list_entries(jobinfo) abort
 | 
						|
    " Change bufnr.
 | 
						|
    new
 | 
						|
    return [
 | 
						|
      \ {'text': 'Some error', 'lnum': 1, 'bufnr': a:jobinfo.bufnr},
 | 
						|
      \ {'text': 'Some warning without bufnr', 'type': 'W', 'lnum': 2,
 | 
						|
      \  'col': 1, 'length': 5},
 | 
						|
      \ {'text': 'Some warning', 'type': 'W', 'lnum': 2, 'col': 1,
 | 
						|
      \  'bufnr': a:jobinfo.maker.my_orig_bufnr, 'length': 2},
 | 
						|
      \ {'text': 'Some info', 'type': 'I', 'lnum': 3, 'col': 1,
 | 
						|
      \  'filename': '/path/to/file'},
 | 
						|
      \ {'text': 'Some non-type', 'type': '', 'lnum': 4, 'col': 1, 'length': 23,
 | 
						|
      \  'filename': 'get_list_entries_buf1'},
 | 
						|
      \ ]
 | 
						|
  endfunction
 | 
						|
  call neomake#Make(1, [maker])
 | 
						|
  AssertNeomakeMessage 'Queuing action ProcessEntries for BufEnter, WinEnter.'
 | 
						|
  AssertEqual {}, g:neomake_tests_highlight_lengths, 'No highlights have been added yet'
 | 
						|
  AssertEqual [], getloclist(0)
 | 
						|
 | 
						|
  wincmd p
 | 
						|
  AssertEqual winnr, winnr()
 | 
						|
 | 
						|
  let llist = getloclist(0)
 | 
						|
 | 
						|
  " Check that unlisted buffer was created for filename.
 | 
						|
  let unlisted_bufnr = bufnr('/path/to/file')
 | 
						|
  Assert !empty(unlisted_bufnr), 'Unlisted buffer was created (1)'
 | 
						|
  Assert !buflisted(unlisted_bufnr), 'Unlisted buffer was created (2)'
 | 
						|
 | 
						|
  AssertEqual {
 | 
						|
  \ string(buf1): [[1, -1], [2, 2], [4, 23]],
 | 
						|
  \ string(unlisted_bufnr): [[3, -1]]}, g:neomake_tests_highlight_lengths
 | 
						|
 | 
						|
  " Check that existing buffer was used for filename.
 | 
						|
  AssertEqual llist[4].bufnr, buf1, 'get_list_entries_buf1 was picked up'
 | 
						|
 | 
						|
  AssertNeomakeMessage "Entry 2 differs after adding: {'changed': {'valid': [1, 0]}}.", 3
 | 
						|
  AssertNeomakeMessage "Entry 4 differs after adding: {'changed': {'bufnr': [0, ".unlisted_bufnr."]}, 'removed': {'filename': '/path/to/file'}}.", 3
 | 
						|
  AssertNeomakeMessage "Entry 5 differs after adding: {'changed': {'bufnr': [0, ".buf1."]}, 'removed': {'filename': 'get_list_entries_buf1'}}.", 3
 | 
						|
 | 
						|
  AssertEqualQf llist, [
 | 
						|
  \ {'lnum': 1, 'bufnr': buf1, 'col': 0, 'valid': 1, 'vcol': 0, 'nr': -1,
 | 
						|
  \  'type': 'W', 'pattern': '', 'text': 'Some error'},
 | 
						|
  \ {'lnum': 2, 'bufnr': 0, 'col': 1, 'valid': 0, 'vcol': 0, 'nr': -1,
 | 
						|
  \  'type': 'W', 'pattern': '', 'text': 'Some warning without bufnr'},
 | 
						|
  \ {'lnum': 2, 'bufnr': buf1, 'col': 1, 'valid': 1, 'vcol': 0, 'nr': -1,
 | 
						|
  \  'type': 'W', 'pattern': '', 'text': 'Some warning'},
 | 
						|
  \ {'lnum': 3, 'bufnr': unlisted_bufnr, 'col': 1, 'valid': 1, 'vcol': 0, 'nr': -1,
 | 
						|
  \  'type': 'I', 'pattern': '', 'text': 'Some info'},
 | 
						|
  \ {'lnum': 4, 'bufnr': buf1, 'col': 1, 'valid': 1, 'vcol': 0, 'nr': -1,
 | 
						|
  \  'type': '', 'pattern': '', 'text': 'Some non-type'} ]
 | 
						|
  wincmd p
 | 
						|
  bwipe
 | 
						|
  bwipe
 | 
						|
  exe 'bwipe '.unlisted_bufnr
 | 
						|
  AssertEqual len(g:neomake_test_countschanged), 1
 | 
						|
  AssertEqual len(g:neomake_test_finished), 1
 | 
						|
  AssertEqual len(g:neomake_test_jobfinished), 1
 | 
						|
 | 
						|
Execute (cargo error message):
 | 
						|
  let g:neomake_tests_highlight_lengths = {}
 | 
						|
  new
 | 
						|
  file build/lib.rs
 | 
						|
  let cargo = NeomakeTestsGetMakerWithOutput(neomake#makers#ft#rust#cargo(),
 | 
						|
    \ '../tests/fixtures/rust/cargo_error.json')
 | 
						|
 | 
						|
  call neomake#Make(1, [cargo])
 | 
						|
  NeomakeTestsWaitForFinishedJobs
 | 
						|
 | 
						|
  let bufnr = bufnr('%')
 | 
						|
  AssertEqualQf getloclist(0), [{
 | 
						|
    \ 'type': 'E',
 | 
						|
    \ 'bufnr': bufnr,
 | 
						|
    \ 'nr': 308,
 | 
						|
    \ 'lnum': 19,
 | 
						|
    \ 'col': 46,
 | 
						|
    \ 'valid': 1,
 | 
						|
    \ 'vcol': 0,
 | 
						|
    \ 'pattern': '',
 | 
						|
    \ 'text': 'mismatched types: expected str, found struct `proc_macro::TokenStream`'
 | 
						|
    \ }, {
 | 
						|
    \ 'type': 'E',
 | 
						|
    \ 'bufnr': bufnr,
 | 
						|
    \ 'nr': 308,
 | 
						|
    \ 'lnum': 25,
 | 
						|
    \ 'col': 1,
 | 
						|
    \ 'valid': 1,
 | 
						|
    \ 'vcol': 0,
 | 
						|
    \ 'pattern': '',
 | 
						|
    \ 'text': 'mismatched types: expected str, found struct `proc_macro::TokenStream`'
 | 
						|
    \ }, {
 | 
						|
    \ 'type': 'I',
 | 
						|
    \ 'bufnr':  bufnr,
 | 
						|
    \ 'nr': 308,
 | 
						|
    \ 'lnum': 25,
 | 
						|
    \ 'col': 1,
 | 
						|
    \ 'valid': 1,
 | 
						|
    \ 'vcol': 0,
 | 
						|
    \ 'pattern': '',
 | 
						|
    \ 'text': 'found type `&proc_macro::TokenStream`'
 | 
						|
    \ }]
 | 
						|
 | 
						|
  " TODO: should not call it for the same highlight twice?!
 | 
						|
  AssertEqual {string(bufnr): [[19, 2], [25, 40], [25, 40]]}, g:neomake_tests_highlight_lengths
 | 
						|
  bwipe
 | 
						|
 | 
						|
Execute (cargo warning message):
 | 
						|
  let g:neomake_tests_highlight_lengths = {}
 | 
						|
  new
 | 
						|
  file build/add_assign_like.rs
 | 
						|
  let cargo = NeomakeTestsGetMakerWithOutput(neomake#makers#ft#rust#cargo(),
 | 
						|
    \ '../tests/fixtures/rust/cargo_warning.json')
 | 
						|
 | 
						|
  call neomake#Make(1, [cargo])
 | 
						|
  NeomakeTestsWaitForFinishedJobs
 | 
						|
 | 
						|
  let bufnr = bufnr('%')
 | 
						|
  AssertEqualQf getloclist(0), [{
 | 
						|
    \ 'type': 'W',
 | 
						|
    \ 'bufnr': bufnr,
 | 
						|
    \ 'nr': -1,
 | 
						|
    \ 'lnum': 2,
 | 
						|
    \ 'col': 24,
 | 
						|
    \ 'valid': 1,
 | 
						|
    \ 'vcol': 0,
 | 
						|
    \ 'pattern': '',
 | 
						|
    \ 'text': 'unused import: `Variant`, #[warn(unused_imports)] on by default'}]
 | 
						|
  AssertEqual {string(bufnr): [[2, 7]]}, g:neomake_tests_highlight_lengths
 | 
						|
  bwipe
 | 
						|
 | 
						|
Execute (cargo warning for file that is not open):
 | 
						|
  let g:neomake_tests_highlight_lengths = {}
 | 
						|
  new
 | 
						|
  file build/some_other_file.rs
 | 
						|
 | 
						|
  " Uses build/add_assign_like.rs.
 | 
						|
  let cargo = NeomakeTestsGetMakerWithOutput(neomake#makers#ft#rust#cargo(),
 | 
						|
    \ '../tests/fixtures/rust/cargo_warning.json')
 | 
						|
 | 
						|
  call neomake#Make(1, [cargo])
 | 
						|
  NeomakeTestsWaitForFinishedJobs
 | 
						|
 | 
						|
  let unlisted_bufnr = bufnr('^build/add_assign_like.rs$')
 | 
						|
  AssertNotEqual -1, unlisted_bufnr
 | 
						|
 | 
						|
  AssertEqualQf getloclist(0), [{
 | 
						|
    \ 'type': 'W',
 | 
						|
    \ 'bufnr': unlisted_bufnr,
 | 
						|
    \ 'nr': -1,
 | 
						|
    \ 'lnum': 2,
 | 
						|
    \ 'col': 24,
 | 
						|
    \ 'valid': 1,
 | 
						|
    \ 'vcol': 0,
 | 
						|
    \ 'pattern': '',
 | 
						|
    \ 'text': 'unused import: `Variant`, #[warn(unused_imports)] on by default'}]
 | 
						|
  AssertEqual {string(unlisted_bufnr): [[2, 7]]}, g:neomake_tests_highlight_lengths
 | 
						|
  bwipe
 | 
						|
  exe 'bwipe' unlisted_bufnr
 | 
						|
 | 
						|
Execute (cargo error message children):
 | 
						|
  let g:neomake_tests_highlight_lengths = {}
 | 
						|
  new
 | 
						|
  file tests/from.rs
 | 
						|
  let cargo = NeomakeTestsGetMakerWithOutput(neomake#makers#ft#rust#cargo(),
 | 
						|
    \ '../tests/fixtures/rust/cargo_error_children.json')
 | 
						|
 | 
						|
  call neomake#Make(1, [cargo])
 | 
						|
  NeomakeTestsWaitForFinishedJobs
 | 
						|
 | 
						|
  let bufnr = bufnr('%')
 | 
						|
  AssertEqualQf getloclist(0), [{
 | 
						|
    \ 'type': 'E',
 | 
						|
    \ 'bufnr': bufnr,
 | 
						|
    \ 'nr': -1,
 | 
						|
    \ 'lnum': 11,
 | 
						|
    \ 'col': 10,
 | 
						|
    \ 'valid': 1,
 | 
						|
    \ 'vcol': 0,
 | 
						|
    \ 'pattern': '',
 | 
						|
    \ 'text': 'custom derive attribute panicked. message: Only structs and enums can derive From'}]
 | 
						|
  AssertEqual {string(bufnr): [[11, 4]]}, g:neomake_tests_highlight_lengths
 | 
						|
  bwipe
 | 
						|
 | 
						|
Execute (Teardown: undo monkeypatching):
 | 
						|
  " Restore if not profiling.
 | 
						|
  if !v:profiling
 | 
						|
    runtime autoload/neomake/highlights.vim
 | 
						|
  endif
 |