mirror of
				https://github.com/neovim/neovim.git
				synced 2025-11-04 09:44:31 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
local lfs = require('lfs')
 | 
						|
local helpers = require('test.functional.helpers')(after_each)
 | 
						|
local clear, command, eval, eq = helpers.clear, helpers.command, helpers.eval, helpers.eq
 | 
						|
local write_file = helpers.write_file
 | 
						|
 | 
						|
describe("backtick expansion", function()
 | 
						|
  setup(function()
 | 
						|
    clear()
 | 
						|
    lfs.mkdir("test-backticks")
 | 
						|
    write_file("test-backticks/file1", "test file 1")
 | 
						|
    write_file("test-backticks/file2", "test file 2")
 | 
						|
    write_file("test-backticks/file3", "test file 3")
 | 
						|
    lfs.mkdir("test-backticks/subdir")
 | 
						|
    write_file("test-backticks/subdir/file4", "test file 4")
 | 
						|
    -- Long path might cause "Press ENTER" prompt; use :silent to avoid it.
 | 
						|
    command('silent cd test-backticks')
 | 
						|
  end)
 | 
						|
 | 
						|
  teardown(function()
 | 
						|
    helpers.rmdir('test-backticks')
 | 
						|
  end)
 | 
						|
 | 
						|
  it("with default 'shell'", function()
 | 
						|
    if helpers.pending_win32(pending) then return end  -- Need win32 shell fixes
 | 
						|
    command(":silent args `echo ***2`")
 | 
						|
    eq({ "file2", }, eval("argv()"))
 | 
						|
    command(":silent args `echo */*4`")
 | 
						|
    eq({ "subdir/file4", }, eval("argv()"))
 | 
						|
  end)
 | 
						|
 | 
						|
  it("with shell=fish", function()
 | 
						|
    if eval("executable('fish')") == 0 then
 | 
						|
      pending('missing "fish" command')
 | 
						|
      return
 | 
						|
    end
 | 
						|
    command("set shell=fish")
 | 
						|
    command(":silent args `echo ***2`")
 | 
						|
    eq({ "file2", }, eval("argv()"))
 | 
						|
    command(":silent args `echo */*4`")
 | 
						|
    eq({ "subdir/file4", }, eval("argv()"))
 | 
						|
  end)
 | 
						|
end)
 |