Before:
  call ale#assert#SetUpFixerTest('lua', 'stylua')

After:
  call ale#assert#TearDownFixerTest()

Execute(The default command should be correct):
  AssertFixer {'cwd': '%s:h', 'command': ale#Escape('stylua') . ' --stdin-filepath %s -'}

Execute(The stylua callback should include custom stylua options):
  let g:ale_lua_stylua_executable = 'xxxinvalid'
  let g:ale_lua_stylua_options = '--search-parent-directories'

  AssertFixer
  \ {
  \   'cwd': '%s:h',
  \   'command': ale#Escape('xxxinvalid')
  \     . ' ' . g:ale_lua_stylua_options
  \     . ' --stdin-filepath %s -',
  \ }

Execute(stylua should detect stylua.toml):
  call ale#test#SetFilename('../test-files/stylua/stylua_config_dir/subdir/test.lua')

  AssertFixer
  \ {
  \   'cwd': ale#path#Simplify(g:dir . '/../test-files/stylua/stylua_config_dir'),
  \   'command': ale#Escape('stylua') . ' --stdin-filepath %s -',
  \ }

Execute(stylua should detect .stylua.toml):
  call ale#test#SetFilename('../test-files/stylua/stylua_dot_config_dir/subdir/test.lua')

  AssertFixer
  \ {
  \   'cwd': ale#path#Simplify(g:dir . '/../test-files/stylua/stylua_dot_config_dir'),
  \   'command': ale#Escape('stylua') . ' --stdin-filepath %s -',
  \ }
