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; }"); }
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"); }
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; }" ); }