Beispiel #1
0
        public void GenerateMethodInClosedFile()
        {
            var project = new Microsoft.VisualStudio.IntegrationTest.Utilities.Common.ProjectUtils.Project(ProjectName);

            VisualStudio.SolutionExplorer.AddFile(project, "Foo.vb", @"
Class Foo
End Class
");

            SetUpEditor(@"
Imports System;

Class Program
    Sub Main(args As String())
        Dim f as Foo = new Foo()
        f.Bar()$$
    End Sub
End Class
");

            VisualStudio.Editor.InvokeCodeActionList();
            VisualStudio.Editor.Verify.CodeAction("Generate method 'Foo.Bar'", applyFix: true);
            VisualStudio.SolutionExplorer.Verify.FileContents(project, "Foo.vb", @"
Class Foo
    Friend Sub Bar()
        Throw New NotImplementedException()
    End Sub
End Class
");
        }
        public void VerifyMissingByDefault()
        {
            var project = new Microsoft.VisualStudio.IntegrationTest.Utilities.Common.ProjectUtils.Project(ProjectName);

            VisualStudio.SolutionExplorer.AddFile(project, "Foo.cs", contents: @"
public class Foo
{
}
");
            SetUpEditor(@"
using System;

class Program
{
    static void Main(string[] args)
    {
    }

    $$
}");

            VisualStudio.Editor.Paste(@"Task DoThingAsync() => Task.CompletedTask;");

            VisualStudio.Editor.Verify.TextContains(@"
using System;

class Program
{
    static void Main(string[] args)
    {
    }

    Task DoThingAsync() => Task.CompletedTask;
}");
        }
Beispiel #3
0
        public void VerifyAddImportsOnPaste()
        {
            var project =
                new Microsoft.VisualStudio.IntegrationTest.Utilities.Common.ProjectUtils.Project(
                    ProjectName
                    );

            VisualStudio.SolutionExplorer.AddFile(
                project,
                "Example.cs",
                contents: @"
public class Example
{
}
"
                );
            SetUpEditor(
                @"
using System;

class Program
{
    static void Main(string[] args)
    {
    }

    $$
}"
                );

            using var telemetry = VisualStudio.EnableTestTelemetryChannel();

            VisualStudio.Workspace.SetFeatureOption(
                FeatureOnOffOptions.AddImportsOnPaste.Feature,
                FeatureOnOffOptions.AddImportsOnPaste.Name,
                LanguageNames.CSharp,
                "True"
                );

            VisualStudio.Editor.Paste(@"Task DoThingAsync() => Task.CompletedTask;");

            VisualStudio.Editor.Verify.TextContains(
                @"
using System;
using System.Threading.Tasks;

class Program
{
    static void Main(string[] args)
    {
    }

    Task DoThingAsync() => Task.CompletedTask;
}"
                );
            telemetry.VerifyFired("vs/ide/vbcs/commandhandler/paste/importsonpaste");
        }
Beispiel #4
0
        public void VerifyDisabledWithNull()
        {
            var project =
                new Microsoft.VisualStudio.IntegrationTest.Utilities.Common.ProjectUtils.Project(
                    ProjectName
                    );

            VisualStudio.SolutionExplorer.AddFile(
                project,
                "Example.cs",
                contents: @"
public class Example
{
}
"
                );
            SetUpEditor(
                @"
using System;

class Program
{
    static void Main(string[] args)
    {
    }

    $$
}"
                );
            VisualStudio.Workspace.SetFeatureOption(
                FeatureOnOffOptions.AddImportsOnPaste.Feature,
                FeatureOnOffOptions.AddImportsOnPaste.Name,
                LanguageNames.CSharp,
                valueString: null
                );

            VisualStudio.Editor.Paste(@"Task DoThingAsync() => Task.CompletedTask;");

            VisualStudio.Editor.Verify.TextContains(
                @"
using System;

class Program
{
    static void Main(string[] args)
    {
    }

    Task DoThingAsync() => Task.CompletedTask;
}"
                );
        }