diff --git a/autoload/ale/ruby.vim b/autoload/ale/ruby.vim index f0d84296..5f0aa50d 100644 --- a/autoload/ale/ruby.vim +++ b/autoload/ale/ruby.vim @@ -29,7 +29,7 @@ function! ale#ruby#FindProjectRoot(buffer) abort return l:dir endif - for l:name in ['Rakefile', 'Gemfile'] + for l:name in ['.solargraph.yml', 'Rakefile', 'Gemfile'] let l:dir = fnamemodify( \ ale#path#FindNearestFile(a:buffer, l:name), \ ':h' diff --git a/test/command_callback/test_ruby_solargraph.vader b/test/command_callback/test_ruby_solargraph.vader index a27cb62d..b9dd46d8 100644 --- a/test/command_callback/test_ruby_solargraph.vader +++ b/test/command_callback/test_ruby_solargraph.vader @@ -27,3 +27,10 @@ Execute(should set solargraph for ruby app2): AssertLSPOptions {} AssertLSPProject ale#path#Simplify(g:dir . 'command_callback/../ruby_fixtures/valid_ruby_app2') AssertLSPAddress '127.0.0.1:7658' + +Execute(should set solargraph for ruby app3): + call ale#test#SetFilename('../ruby_fixtures/valid_ruby_app3/lib/file.rb') + AssertLSPLanguage 'ruby' + AssertLSPOptions {} + AssertLSPProject ale#path#Simplify(g:dir . 'command_callback/../ruby_fixtures/valid_ruby_app3') + AssertLSPAddress '127.0.0.1:7658' diff --git a/test/ruby_fixtures/valid_ruby_app3/.solargraph.yml b/test/ruby_fixtures/valid_ruby_app3/.solargraph.yml new file mode 100644 index 00000000..e69de29b diff --git a/test/ruby_fixtures/valid_ruby_app3/lib/file.rb b/test/ruby_fixtures/valid_ruby_app3/lib/file.rb new file mode 100644 index 00000000..e69de29b