mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	 052498ed42
			
		
	
	052498ed42
	
	
	
		
			
			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.
		
			
				
	
	
		
			59 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
| -- Tests for "r<Tab>" with 'smarttab' and 'expandtab' set/not set.
 | ||
| -- Also test that dv_ works correctly
 | ||
| 
 | ||
| local n = require('test.functional.testnvim')()
 | ||
| 
 | ||
| local feed, insert = n.feed, n.insert
 | ||
| local clear, feed_command, expect = n.clear, n.feed_command, n.expect
 | ||
| 
 | ||
| describe([[performing "r<Tab>" with 'smarttab' and 'expandtab' set/not set, and "dv_"]], function()
 | ||
|   setup(clear)
 | ||
| 
 | ||
|   -- luacheck: ignore 621 (Indentation)
 | ||
|   it('is working', function()
 | ||
|     insert([[
 | ||
|       start text
 | ||
|       		some test text
 | ||
|       test text
 | ||
|       		other test text
 | ||
|           a cde
 | ||
|           f ghi
 | ||
|       test text
 | ||
|         Second line beginning with whitespace]])
 | ||
| 
 | ||
|     feed_command('set smarttab expandtab ts=8 sw=4')
 | ||
|     -- Make sure that backspace works, no matter what termcap is used.
 | ||
|     feed_command('set t_kD=x7f t_kb=x08')
 | ||
| 
 | ||
|     feed_command('/some')
 | ||
|     feed('r	')
 | ||
|     feed_command('set noexpandtab')
 | ||
|     feed_command('/other')
 | ||
|     feed('r	<cr>')
 | ||
|     -- Test replacing with Tabs and then backspacing to undo it.
 | ||
|     feed('0wR			<bs><bs><bs><esc><cr>')
 | ||
|     -- Test replacing with Tabs.
 | ||
|     feed('0wR			<esc><cr>')
 | ||
|     -- Test that copyindent works with expandtab set.
 | ||
|     feed_command('set expandtab smartindent copyindent ts=8 sw=8 sts=8')
 | ||
|     feed('o{<cr>x<esc>')
 | ||
|     feed_command('set nosol')
 | ||
|     feed_command('/Second line/')
 | ||
|     -- Test "dv_"
 | ||
|     feed('fwdv_')
 | ||
| 
 | ||
|     -- Assert buffer contents.
 | ||
|     expect([[
 | ||
|       start text
 | ||
|       		    ome test text
 | ||
|       test text
 | ||
|       		    ther test text
 | ||
|           a cde
 | ||
|           		hi
 | ||
|       test text
 | ||
|       {
 | ||
|               x
 | ||
|         with whitespace]])
 | ||
|   end)
 | ||
| end)
 |