Я пытаюсь преобразовать строку -> Список , используя StepArgumentTransformation в specFlow.Я упомяну 2 случая, 1-й случай как рабочий сценарий и 2-й случай как нерабочий сценарий.
- Рабочий случай:
-. Файл функции: Then Get StateForecast critical points for "ironwood"
-step.cs файл:
[Then(@"Get StateForecast critical points for ""(.*)""")]
public void ThenGetStateForecastCriticalPointsFor(List<long> substationChildCircuits)
- преобразование аргумента:
[StepArgumentTransformation]
public List<long> SubstationStringToChildCircuitsConverter(string substationName)
нерабочий случай
Так как в файле ArgumentTransformation.cs у меня есть другой метод, который имеет тот же тип возвращаемого значения List, но другой ввод, Таблица, ->
[StepArgumentTransformation]
public List<long> FeederGidTableTransform(Table feederGids)
Я думал предоставить параметр-регулярное выражение в [StepArgumentTransformation (@ "REGEX")].Причина этого в том, что эти два метода аргумента не отличаются, поскольку они имеют одинаковый тип возвращаемого значения.Я пробовал что-то вроде этого:
[StepArgumentTransformation(@"(\.+)")]
public List<long> SubstationStringToChildCircuitsConverter(string substationName)
или:
[StepArgumentTransformation(@"ironwood")]
public List<long> SubstationStringToChildCircuitsConverter(string substationName)
для метода в steps.cs, записанного как:
[Then(@"Get StateForecast critical points for ""(.*)""")]
public void ThenGetStateForecastCriticalPointsFor(List<long> substationChildCircuits)
, а также записанного как (со скобками):
[Then(@"Get StateForecast critical points for (""(.*)"")")]
public void ThenGetStateForecastCriticalPointsFor(List<long> substationChildCircuits)
В любом случае, я получаю сообщения об ошибках типа (в зависимости от другого варианта использования):
ошибка: неверное приведение из 'System.String' к'System.Collections.Generic.List`1 [[System.Int64, mscorlib, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = b77a5c561934e089]]'.
ошибка: параметрнесовпадение счетчиков.
Моя цель - правильно установить эти параметры регулярного выражения, чтобы я мог перехватывать / перехватывать определенные входные данные и вызывать нужные методы преобразования аргументов шага.
У меня также естьпроверил Как правильно указать, какую StepArgumentTrasformation использовать с шагом?