Список примитивов из таблицы в SpecFlow - PullRequest
0 голосов
/ 12 февраля 2019

Я использую предварительную версию SpecFlow 3, но не уверен, что это что-то меняет.В любом случае у меня есть следующая таблица:

    | Driving Licences|
    | None            |
    | C               |
    | CE              |
    | C1              |
    | C1E             |
    | D               |
    | DE              |
    | D1              |
    | D1E             |

Я хочу получить список строк.Поэтому я делаю следующее:

    [Then(@"I get the list")]
    public void CanSelectOneOrMoreFromThisList(Table table)
    {
        var values = table.CreateSet<string>();

        ...
    }

Теперь значения - это список из 9 строк, но все они пусты.Я мог бы сделать это вручную со строками таблицы и linq, но задавался вопросом, есть ли что-то в SpecFlow, чтобы удовлетворить это.Пробовал искать, но нашел только примеры для сложных ссылочных типов.Заранее спасибо.

1 Ответ

0 голосов
/ 13 февраля 2019

Обычно я использую Linq для преобразования таблицы в такой список:

using System.Linq;

[Then(@"I get the list")]
public void CanSelectOneOrMoreFromThisList(Table table)
{
    IEnumerable<string> values = from row in table.Rows select row["Driving Licenses"];

    // ...
}

Вы также можете написать var values вместо IEnumerable<string> values.

...