mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	 6cee9d1a17
			
		
	
	6cee9d1a17
	
	
	
		
			
			Problem:    test_expand fails on MS-Windows.
Solution:   Always use forward slashes.  Remove references to test27.
f60b796fa9
		
	
		
			
				
	
	
		
			78 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
| -- Test for expanding file names
 | |
| 
 | |
| local helpers = require('test.functional.helpers')(after_each)
 | |
| local eq = helpers.eq
 | |
| local call = helpers.call
 | |
| local nvim = helpers.meths
 | |
| local clear = helpers.clear
 | |
| local source = helpers.source
 | |
| 
 | |
| local function expected_empty()
 | |
|   eq({}, nvim.get_vvar('errors'))
 | |
| end
 | |
| 
 | |
| describe('expand file name', function()
 | |
|   after_each(function()
 | |
|     helpers.rmdir('Xdir1')
 | |
|     helpers.rmdir('Xdir2')
 | |
|     helpers.rmdir('Xdir3')
 | |
|     helpers.rmdir('Xdir4')
 | |
|   end)
 | |
| 
 | |
|   before_each(function()
 | |
|     clear()
 | |
| 
 | |
|     source([[
 | |
|       func Test_with_directories()
 | |
|         call mkdir('Xdir1')
 | |
|         call mkdir('Xdir2')
 | |
|         call mkdir('Xdir3')
 | |
|         cd Xdir3
 | |
|         call mkdir('Xdir4')
 | |
|         cd ..
 | |
| 
 | |
|         split Xdir1/file
 | |
|         call setline(1, ['a', 'b'])
 | |
|         w
 | |
|         w Xdir3/Xdir4/file
 | |
|         close
 | |
| 
 | |
|         next Xdir?/*/file
 | |
|         call assert_equal('Xdir3/Xdir4/file', expand('%'))
 | |
| 				if has('unix')
 | |
| 					next! Xdir?/*/nofile
 | |
| 					call assert_equal('Xdir?/*/nofile', expand('%'))
 | |
| 				endif
 | |
|         " Edit another file, on MS-Windows the swap file would be in use and can't
 | |
|         " be deleted
 | |
|         edit foo
 | |
| 
 | |
|         call assert_equal(0, delete('Xdir1', 'rf'))
 | |
|         call assert_equal(0, delete('Xdir2', 'rf'))
 | |
|         call assert_equal(0, delete('Xdir3', 'rf'))
 | |
|       endfunc
 | |
| 
 | |
|       func Test_with_tilde()
 | |
|         let dir = getcwd()
 | |
|         call mkdir('Xdir ~ dir')
 | |
|         call assert_true(isdirectory('Xdir ~ dir'))
 | |
|         cd Xdir\ ~\ dir
 | |
|         call assert_true(getcwd() =~ 'Xdir \~ dir')
 | |
|         exe 'cd ' . fnameescape(dir)
 | |
|         call delete('Xdir ~ dir', 'd')
 | |
|         call assert_false(isdirectory('Xdir ~ dir'))
 | |
|       endfunc
 | |
|     ]])
 | |
|   end)
 | |
| 
 | |
|   it('works with directories', function()
 | |
|     call('Test_with_directories')
 | |
|     expected_empty()
 | |
|   end)
 | |
| 
 | |
|   it('works with tilde', function()
 | |
|     call('Test_with_tilde')
 | |
|     expected_empty()
 | |
|   end)
 | |
| end)
 |