mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
| local helpers = require('test.functional.helpers')(after_each)
 | |
| 
 | |
| local clear = helpers.clear
 | |
| local eq = helpers.eq
 | |
| local eval = helpers.eval
 | |
| local funcs = helpers.funcs
 | |
| local source = helpers.source
 | |
| 
 | |
| describe('CursorMoved', function()
 | |
|   before_each(clear)
 | |
| 
 | |
|   it('is triggered by changing windows', function()
 | |
|     source([[
 | |
|     let g:cursormoved = 0
 | |
|     vsplit
 | |
|     autocmd CursorMoved * let g:cursormoved += 1
 | |
|     wincmd w
 | |
|     wincmd w
 | |
|     ]])
 | |
|     eq(2, eval('g:cursormoved'))
 | |
|   end)
 | |
| 
 | |
|   it("is not triggered by functions that don't change the window", function()
 | |
|     source([[
 | |
|     let g:cursormoved = 0
 | |
|     let g:buf = bufnr('%')
 | |
|     vsplit foo
 | |
|     autocmd CursorMoved * let g:cursormoved += 1
 | |
|     call nvim_buf_set_lines(g:buf, 0, -1, v:true, ['aaa'])
 | |
|     ]])
 | |
|     eq({'aaa'}, funcs.nvim_buf_get_lines(eval('g:buf'), 0, -1, true))
 | |
|     eq(0, eval('g:cursormoved'))
 | |
|   end)
 | |
| 
 | |
|   it("is not triggered by cursor movement prior to first CursorMoved instantiation", function()
 | |
|     source([[
 | |
|     let g:cursormoved = 0
 | |
|     autocmd! CursorMoved
 | |
|     autocmd CursorMoved * let g:cursormoved += 1
 | |
|     ]])
 | |
|     eq(0, eval('g:cursormoved'))
 | |
|   end)
 | |
| end)
 | 
