File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -1211,7 +1211,7 @@ def workspace_dependencies(message)
12111211 }
12121212 end
12131213 end
1214- rescue Bundler ::GemNotFound , Bundler ::GemfileNotFound
1214+ rescue Bundler ::GemNotFound , Bundler ::GemfileNotFound , Errno :: ENOENT
12151215 [ ]
12161216 end
12171217
Original file line number Diff line number Diff line change @@ -383,6 +383,24 @@ def test_workspace_dependencies_does_not_fail_if_gems_are_not_installed
383383 assert_empty ( @server . pop_response . response )
384384 end
385385
386+ def test_workspace_dependencies_returns_empty_response_when_cwd_is_deleted
387+ original_dir = Dir . pwd
388+
389+ begin
390+ parent = Dir . mktmpdir
391+ workspace = File . join ( parent , "workspace" )
392+ Dir . mkdir ( workspace )
393+ Dir . chdir ( workspace )
394+ FileUtils . rm_rf ( parent )
395+
396+ @server . process_message ( { id : 1 , method : "rubyLsp/workspace/dependencies" } )
397+
398+ assert_empty ( @server . pop_response . response )
399+ ensure
400+ Dir . chdir ( original_dir )
401+ end
402+ end
403+
386404 def test_workspace_dependencies_returns_empty_list_when_there_is_no_bundle
387405 @server . global_state . expects ( :top_level_bundle ) . returns ( false )
388406 @server . process_message ( { id : 1 , method : "rubyLsp/workspace/dependencies" } )
You can’t perform that action at this time.
0 commit comments