public async Task Should_Handle_Null_Workspace_Folders_On_Refresh() { var workspaceLanguageServer = Substitute.For <IWorkspaceLanguageServer>(); var languageServer = Substitute.For <ILanguageServer>(); languageServer.ClientSettings.Returns( new InitializeParams() { Capabilities = new ClientCapabilities() { Workspace = new WorkspaceClientCapabilities() { WorkspaceFolders = true } }, WorkspaceFolders = null } ); languageServer.SendRequest(Arg.Any <WorkspaceFolderParams>(), Arg.Any <CancellationToken>()).Returns((Container <WorkspaceFolder>?)null); var workspaceFolders = new LanguageServerWorkspaceFolderManager(workspaceLanguageServer); var started = (IOnLanguageServerStarted)workspaceFolders; await started.OnStarted(languageServer, CancellationToken); var result = await workspaceFolders.Refresh().ToArray(); result.Should().BeEmpty(); }
public async Task Should_Handle_Null_Workspace_Folders() { var workspaceLanguageServer = Substitute.For <IWorkspaceLanguageServer>(); var languageServer = Substitute.For <ILanguageServer>(); languageServer.ClientSettings.Returns( new InitializeParams { Capabilities = new ClientCapabilities { Workspace = new WorkspaceClientCapabilities { WorkspaceFolders = true } }, WorkspaceFolders = null } ); var workspaceFolders = new LanguageServerWorkspaceFolderManager(workspaceLanguageServer); ((IRegistration <DidChangeWorkspaceFolderRegistrationOptions>)workspaceFolders).GetRegistrationOptions( languageServer !.ClientSettings !.Capabilities ! ); var started = (IOnLanguageServerStarted)workspaceFolders; await started.OnStarted(languageServer, CancellationToken); }