提交 c56fcc25 编写于 作者: D Dustin Campbell

Add failing unit tests for Edit.OpenLineAbove and Edit.OpenLineBelow in C# XML doc comments

上级 beb31474
......@@ -1338,6 +1338,126 @@ public Class1()
VerifyTypingCharacter(code, expected, useTab: true);
}
[WorkItem(2090, "https://github.com/dotnet/roslyn/issues/2090")]
[Fact, Trait(Traits.Feature, Traits.Features.DocumentationComments)]
public void TestOpenLineAbove1()
{
const string code =
@"class C
{
/// <summary>
/// stuff$$
/// </summary>
void M()
{
}
}";
var expected =
@"class C
{
/// <summary>
/// $$
/// stuff
/// </summary>
void M()
{
}
}";
VerifyOpenLineAbove(code, expected);
}
[WorkItem(2090, "https://github.com/dotnet/roslyn/issues/2090")]
[Fact, Trait(Traits.Feature, Traits.Features.DocumentationComments)]
public void TestOpenLineAbove2()
{
const string code =
@"class C
{
/// <summary>
/// $$stuff
/// </summary>
void M()
{
}
}";
const string expected =
@"class C
{
/// <summary>
/// $$
/// stuff
/// </summary>
void M()
{
}
}";
VerifyOpenLineAbove(code, expected);
}
[WorkItem(2090, "https://github.com/dotnet/roslyn/issues/2090")]
[Fact, Trait(Traits.Feature, Traits.Features.DocumentationComments)]
public void TestOpenLineBelow1()
{
const string code =
@"class C
{
/// <summary>
/// stuff$$
/// </summary>
void M()
{
}
}";
const string expected =
@"class C
{
/// <summary>
/// stuff
/// $$
/// </summary>
void M()
{
}
}";
VerifyOpenLineBelow(code, expected);
}
[WorkItem(2090, "https://github.com/dotnet/roslyn/issues/2090")]
[Fact, Trait(Traits.Feature, Traits.Features.DocumentationComments)]
public void TestOpenLineBelow2()
{
const string code =
@"class C
{
/// <summary>
/// $$stuff
/// </summary>
void M()
{
}
}";
const string expected =
@"class C
{
/// <summary>
/// stuff
/// $$
/// </summary>
void M()
{
}
}";
VerifyOpenLineBelow(code, expected);
}
protected override char DocumentationCommentCharacter
{
get { return '/'; }
......
......@@ -64,6 +64,32 @@ protected void VerifyInsertCommentCommand(string initialMarkup, string expectedM
});
}
protected void VerifyOpenLineAbove(string initialMarkup, string expectedMarkup)
{
Verify(initialMarkup, expectedMarkup, (view, undoHistoryRegistry, editorOperationsFactoryService, completionService) =>
{
var commandHandler = CreateCommandHandler(TestWaitIndicator.Default, undoHistoryRegistry, editorOperationsFactoryService, completionService) as ICommandHandler<OpenLineAboveCommandArgs>;
var commandArgs = new OpenLineAboveCommandArgs(view, view.TextBuffer);
Action nextHandler = delegate { };
commandHandler.ExecuteCommand(commandArgs, nextHandler);
});
}
protected void VerifyOpenLineBelow(string initialMarkup, string expectedMarkup)
{
Verify(initialMarkup, expectedMarkup, (view, undoHistoryRegistry, editorOperationsFactoryService, completionService) =>
{
var commandHandler = CreateCommandHandler(TestWaitIndicator.Default, undoHistoryRegistry, editorOperationsFactoryService, completionService) as ICommandHandler<OpenLineBelowCommandArgs>;
var commandArgs = new OpenLineBelowCommandArgs(view, view.TextBuffer);
Action nextHandler = delegate { };
commandHandler.ExecuteCommand(commandArgs, nextHandler);
});
}
private Action CreateInsertTextHandler(ITextView textView, string text)
{
return () =>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册