[Moscow.pm] Научите писать красивые тесты

Гришаев Анатолий agrishaev на gmail.com
Чт Июн 30 10:10:04 PDT 2016


Мне твой кэйс понравился, и главное его можно допилить. Собственно мне
нужно было увидеть красоту, а сделать копию не проблема.

30 июня 2016 г., 20:04 пользователь Akzhan Abdulin <akzhan.abdulin на gmail.com
> написал:

> Обычно нужно знать искомый пример для фэйла и весь кейс его
> воспроизведения. Если для этого требуется знать номер строки, то да,
> обязательно надо добавить, и наверняка это можно автоматизировать.
>
> Просто такой задачи тогда не стояло.
>
> 30 июня 2016 г., 20:00 пользователь Гришаев Анатолий <agrishaev на gmail.com>
> написал:
>
> Почти, что надо.
>> Маленький минус --- теряется информация о строке к которой определен тест
>> Если добавить
>>
>> {
>> app => sub { return [ 200, [ foo => "\021bar" ], [ 'OK' ] ]; },
>> die => qr/Response headers MUST NOT contain characters below
>> octal.+Header: foo/,
>>  line => get_line(),
>> },
>>
>> Будет почти что надо
>>
>> 30 июня 2016 г., 19:46 пользователь Akzhan Abdulin <
>> akzhan.abdulin на gmail.com> написал:
>>
>>> оно?
>>>
>>>
>>> https://github.com/plack/Plack/blob/master/t/Plack-Middleware/lint_wrong_header_info.t
>>>
>>> 30 июня 2016 г., 19:25 пользователь Гришаев Анатолий <
>>> agrishaev на gmail.com> написал:
>>>
>>>> Добрый день Moscow PM!
>>>>
>>>>
>>>> Пишу тесты для сложной функции-монстра
>>>>
>>>> На вход принимает строку  и на выход "почти" строку.
>>>>
>>>>
>>>> Сейчас тесты выглядят так
>>>> ////////////////////////////
>>>> my ($want_result,  $input) = ( "вход 1", "выход 1")
>>>>
>>>> my $r = my_func($input)
>>>> ok($r)
>>>> is($r->string, $want_result, "parse $input")
>>>>
>>>> my ($want_result,  $input) = ( "вход 2", "выход 2")
>>>>
>>>> my $r = my_func($input)
>>>> ok($r)
>>>> is($r->string, $want_result, "parse $input")
>>>> //////////////////////////
>>>>
>>>> Получается куча повторяющего кода, в котором теряется суть
>>>>
>>>> Можно ли этого избежать и писать более красиво?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Moscow.pm mailing list
>>>> moscow-pm на pm.org | http://moscow.pm.org
>>>>
>>>>
>>>
>>> --
>>> Moscow.pm mailing list
>>> moscow-pm на pm.org | http://moscow.pm.org
>>>
>>>
>>
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
>>
>>
>
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>
>
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20160630/72e61989/attachment-0001.html>


Подробная информация о списке рассылки Moscow-pm