public async Task RunNoActionTestAsync(params string[] input)
        {
            var acceptor = new SingleCodeActionAcceptor();
            var context  = CodeRefactoringContextBuilder.Build(input, acceptor, AdditionalReferences);

            await Provider.ComputeRefactoringsAsync(context);

            Assert.False(acceptor.HasAction);
        }
        public async Task RunNoSpecificActionTestAsync(string actionTitle, string input)
        {
            var acceptor = new MultipleCodeActionsAcceptor();
            var context  = CodeRefactoringContextBuilder.Build(input, acceptor, AdditionalReferences);

            await Provider.ComputeRefactoringsAsync(context);

            Assert.False(acceptor.HasAction(actionTitle));
        }
        public async Task RunMultipleActionsTestAsync(string actionTitle, string input, string expectedOutput)
        {
            var acceptor = new MultipleCodeActionsAcceptor();
            var context  = CodeRefactoringContextBuilder.Build(input, acceptor, AdditionalReferences);

            await Provider.ComputeRefactoringsAsync(context);

            Assert.True(acceptor.HasAction(actionTitle));

            var result = await acceptor.GetResultAsync(actionTitle, context);

            var normalizedExpected = expectedOutput.HomogenizeLineEndings();
            var normalizedActual   = result.HomogenizeLineEndings();

            output.WriteLine(normalizedActual);

            Assert.Equal(normalizedExpected, normalizedActual);
        }