Команда для записи символа в виде текста (Resharper? VS2010?) - PullRequest
0 голосов
/ 28 июня 2010

Я смотрел скринкаст о ком-то, кто использовал Resharper (на VS 2010 или 2008, не уверен), где они могли заполнить имя теста строковым литералом:

public class FooTest
{
    public void "runs backgrounnd process until complete"

и затем какой-то командойпреобразовал это в

public class FooTest
{
    public void runs_backgrounnd_process_until_complete()
    {

Мне было интересно, знал ли кто-нибудь, что это за команда.

Ответы [ 2 ]

0 голосов
/ 28 июня 2010

Это визуальный студийный макрос, изначально принадлежавший классу JP Boodhoo «Ничего, кроме .NET Boot Camp». Вот оно:

 Sub ConvertLine()
        If DTE.ActiveDocument Is Nothing Then Return

        Dim isOpen As Boolean = OpenUndo("ConvertLine")

        Dim selection As TextSelection = CType(DTE.ActiveDocument.Selection(), EnvDTE.TextSelection)
        selection.SelectLine()
        If selection.Text = "" Then Return

        Dim classKeyword As String = "class """
        Dim methodKeyword As String = "void """
        Dim classIndex As Integer = selection.Text.IndexOf(classKeyword)
        Dim methodIndex As Integer = selection.Text.IndexOf(methodKeyword)
        If classIndex + methodIndex < 0 Then Return

        Dim index = CType(IIf(classIndex >= 0, classIndex, methodIndex), Integer)
        Dim prefix = selection.Text.Substring(0, index) + CType(IIf(classIndex >= 0, classKeyword, methodKeyword), String)
        Dim description As String = selection.Text.Replace(prefix, String.Empty)

        Dim conversion As String = Common.ReplaceSpacesWithUnderscores(description)
        conversion = Common.ReplaceApostrophesWithUnderscores(conversion)
        conversion = Common.ReplaceQuotesWithUnderscores(conversion)

        selection.Text = prefix.Replace("""", String.Empty) + conversion
        If prefix.Contains(methodKeyword) Then selection.LineDown() Else selection.LineUp()
        selection.EndOfLine()

        CloseUndo(isOpen)
    End Sub
0 голосов
/ 28 июня 2010

Похоже на "живой шаблон". Если вы заметили, он вводит fact, который затем заменяется скелетом тестового метода. Отредактируйте, похоже, что это происходит из xUnit.net contrib проекта. Вы должны быть в состоянии сделать что-то подобное и для теста nUnit.

...