public void Should_Return_Handler_Descriptor()
        {
            // Given
            var handlerMatcher        = AutoSubstitute.Resolve <ExecuteCommandMatcher>();
            var executeCommandHandler = Substitute.For <IExecuteCommandHandler>().With(new Container <string>("Command"));
            var registrationsOptions  = new ExecuteCommandRegistrationOptions()
            {
                Commands = new Container <string>("Command")
            };

            // When
            var result = handlerMatcher.FindHandler(new ExecuteCommandParams {
                Command = "Command"
            },
                                                    new List <LspHandlerDescriptor> {
                new LspHandlerDescriptor("workspace/executeCommand",
                                         "Key",
                                         executeCommandHandler,
                                         executeCommandHandler.GetType(),
                                         typeof(ExecuteCommandParams),
                                         typeof(ExecuteCommandRegistrationOptions),
                                         registrationsOptions,
                                         () => true,
                                         typeof(ExecuteCommandCapability),
                                         null,
                                         () => { },
                                         Substitute.For <ILspHandlerTypeDescriptor>())
            });

            // Then
            result.Should().NotBeNullOrEmpty();
            result.Should().Contain(x => x.Method == "workspace/executeCommand");
        }
 public OmniSharpCodeActionHandler(
     Mef.IRequestHandler <GetCodeActionsRequest, GetCodeActionsResponse> getActionsHandler,
     Mef.IRequestHandler <RunCodeActionRequest, RunCodeActionResponse> runActionHandler,
     DocumentSelector documentSelector,
     ISerializer serializer,
     ILanguageServer server,
     DocumentVersions documentVersions)
     : base(new CodeActionRegistrationOptions()
 {
     DocumentSelector = documentSelector,
     CodeActionKinds  = new Container <CodeActionKind>(
         CodeActionKind.SourceOrganizeImports,
         CodeActionKind.Refactor,
         CodeActionKind.RefactorExtract),
 })
 {
     _getActionsHandler = getActionsHandler;
     _runActionHandler  = runActionHandler;
     _serializer        = serializer;
     _server            = server;
     _documentVersions  = documentVersions;
     _executeCommandRegistrationOptions = new ExecuteCommandRegistrationOptions()
     {
         Commands = new Container <string>("omnisharp/executeCodeAction"),
     };
 }
 public DelegatingHandler(
     Func <ExecuteCommandParams, CancellationToken, Task <Unit> > handler,
     Action <ExecuteCommandCapability> setCapability,
     ExecuteCommandRegistrationOptions registrationOptions) : base(registrationOptions)
 {
     _handler       = handler;
     _setCapability = setCapability;
 }
 public static IDisposable OnExecuteCommand(
     this ILanguageServerRegistry registry,
     Func <ExecuteCommandParams, CancellationToken, Task <Unit> > handler,
     ExecuteCommandRegistrationOptions registrationOptions = null,
     Action <ExecuteCommandCapability> setCapability       = null)
 {
     registrationOptions = registrationOptions ?? new ExecuteCommandRegistrationOptions();
     return(registry.AddHandlers(new DelegatingHandler(handler, setCapability, registrationOptions)));
 }
Exemplo n.º 5
0
        public void SimpleTest(string expected)
        {
            var model = new ExecuteCommandRegistrationOptions {
                Commands = new[] { "1", "2" }
            };
            var result = Fixture.SerializeObject(model);

            result.Should().Be(expected);

            var deresult = new LspSerializer(ClientVersion.Lsp3).DeserializeObject <ExecuteCommandRegistrationOptions>(expected);

            deresult.Should().BeEquivalentTo(model, x => x.UsingStructuralRecordEquality());
        }
        public void SimpleTest(string expected)
        {
            var model = new ExecuteCommandRegistrationOptions()
            {
                Commands = new [] { "1", "2" }
            };
            var result = Fixture.SerializeObject(model);

            result.Should().Be(expected);

            var deresult = JsonConvert.DeserializeObject <ExecuteCommandRegistrationOptions>(expected);

            deresult.ShouldBeEquivalentTo(model);
        }
Exemplo n.º 7
0
 public OmniSharpCodeActionHandler(
     Mef.IRequestHandler<GetCodeActionsRequest, GetCodeActionsResponse> getActionsHandler,
     Mef.IRequestHandler<RunCodeActionRequest, RunCodeActionResponse> runActionHandler,
     DocumentSelector documentSelector,
     ISerializer serializer,
     ILanguageServer server,
     DocumentVersions documentVersions)
 {
     _getActionsHandler = getActionsHandler;
     _runActionHandler = runActionHandler;
     _documentSelector = documentSelector;
     _serializer = serializer;
     _server = server;
     _documentVersions = documentVersions;
     _executeCommandRegistrationOptions = new ExecuteCommandRegistrationOptions()
     {
         Commands = new Container<string>("omnisharp/executeCodeAction"),
     };
 }
 public ExecuteCommandHandler(ExecuteCommandRegistrationOptions registrationOptions)
 {
     _options = registrationOptions;
 }
 public ExecuteCommandHandler(ExecuteCommandRegistrationOptions registrationOptions, ProgressManager progressManager)
 {
     _options        = registrationOptions;
     ProgressManager = progressManager;
 }