mirror of
				https://github.com/neovim/neovim.git
				synced 2025-11-04 01:34:25 +00:00 
			
		
		
		
	Specifically, functions that are run in the context of the test runner are put in module `test/testutil.lua` while the functions that are run in the context of the test session are put in `test/functional/testnvim.lua`. Closes https://github.com/neovim/neovim/issues/27004.
		
			
				
	
	
		
			23 lines
		
	
	
		
			659 B
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			659 B
		
	
	
	
		
			Lua
		
	
	
	
	
	
local n = require('test.functional.testnvim')()
 | 
						|
 | 
						|
local assert_alive = n.assert_alive
 | 
						|
local clear = n.clear
 | 
						|
local feed = n.feed
 | 
						|
 | 
						|
describe("'tabstop' option", function()
 | 
						|
  before_each(function()
 | 
						|
    clear()
 | 
						|
  end)
 | 
						|
 | 
						|
  -- NOTE: Setting 'tabstop' to a big number reproduces crash #2838.
 | 
						|
  -- Disallowing big 'tabstop' would not fix #2838, only hide it.
 | 
						|
  it('tabstop=<big-number> does not crash #2838', function()
 | 
						|
    -- Insert a <Tab> character for 'tabstop' to work with.
 | 
						|
    feed('i<Tab><Esc>')
 | 
						|
    -- Set 'tabstop' to a very high value.
 | 
						|
    -- Use feed(), not command(), to provoke crash.
 | 
						|
    feed(':set tabstop=3000000000<CR>')
 | 
						|
    assert_alive()
 | 
						|
  end)
 | 
						|
end)
 |