Add support for syntax_tree fixer (#4268)

This is the library that now powers prettier/plugin-ruby but is also
stands on its own: https://github.com/ruby-syntax-tree/syntax_tree
This commit is contained in:
Mo Lawson
2022-08-09 07:11:20 -05:00
committed by GitHub
parent 5063804d44
commit 233b681029
7 changed files with 84 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
Before:
Save g:ale_ruby_syntax_tree_executable
Save g:ale_ruby_syntax_tree_options
" Use an invalid global executable, so we don't match it.
let g:ale_ruby_syntax_tree_executable = 'xxxinvalid'
let g:ale_ruby_syntax_tree_options = ''
call ale#test#SetDirectory('/testplugin/test/fixers')
After:
Restore
call ale#test#RestoreDirectory()
Execute(The syntax_tree callback should return the correct default values):
call ale#test#SetFilename('../test-files/ruby/dummy.rb')
AssertEqual
\ {
\ 'read_temporary_file': 1,
\ 'command': ale#Escape(g:ale_ruby_syntax_tree_executable)
\ . ' write %t',
\ },
\ ale#fixers#syntax_tree#Fix(bufnr(''))
Execute(The syntax_tree callback should include custom options):
let g:ale_ruby_syntax_tree_options = '--print-width=100 --plugins=plugin/trailing_comma'
call ale#test#SetFilename('../test-files/ruby/with_config/dummy.rb')
AssertEqual
\ {
\ 'read_temporary_file': 1,
\ 'command': ale#Escape(g:ale_ruby_syntax_tree_executable)
\ . ' write --print-width=100 --plugins=plugin/trailing_comma %t',
\ },
\ ale#fixers#syntax_tree#Fix(bufnr(''))