Ruby on Rails: запущение тестов

Вы можете использовать это регулярное выражение для соответствия строк, которые вы хотите,

(?=\S*[a-z])(?=\S*\d)[a-z\d]+(?:[.-][a-z\d]+)+

Объяснение:

  • (?=\S*[a-z]) - Этот взгляд вперед гарантирует, что во входящем слове есть, по крайней мере, алфавитный символ
  • (?=\S*\d) - этот прогноз гарантирует, что во входящем слове есть хотя бы цифра
  • [a-z\d]+(?:[.-][a-z\d]+)+ - эта часть захватывает слово содержит буквенно-цифровое слово, содержащее хотя бы один специальный символ . или -

Online Demo

Вот PHP демонстрация кода, модифицирующая ваш код,

$input = '3370.01b, 6510.01.b, m-5510.30, and drm-2013-c-004914 hello, sk8, and mixed-up';
$output = preg_replace_callback('/(?=\S*[a-z])(?=\S*\d)[a-z\d]+(?:[.-][a-z\d]+)+/i', function($matches){return strtoupper($matches[0]);}, $input);
echo $output;

Prints,

3370.01B, 6510.01.B, M-5510.30, and DRM-2013-C-004914 hello, sk8, and mixed-up

8
задан Max 26 March 2009 в 16:49
поделиться

3 ответа

К сожалению, эти два не являются тем же. Запущение тестов под граблями может завершить получение по запросу вещей от различных мест чем тогда, когда Вы запускаете тест непосредственно (больше проблема, когда у Вас есть несколько версий драгоценных камней, и т.д. в Вашей системе).

Намерение состоит в том, что тестовый прогон под граблями должен быть в среде, которая соответствует тому, что произвели бы направляющие; я не могу засвидетельствовать о том, как тесно они соответствуют, но я видел тесты, которые передали, когда выполнено непосредственно, но отказавший, когда выполнено через грабли или направляющие (и стих визы).

7
ответ дан 5 December 2019 в 14:06
поделиться

Нет я не думаю так. Грабли, кажется, удобный способ запустить все тесты, все модульные тесты или все функциональные тесты / тесты контроллера. Для единственного файла я использую ruby object_test.rb подход.. короче и хорошо работает для домашнего проекта моих направляющих.

2
ответ дан 5 December 2019 в 14:06
поделиться

Перед регистрацией по крайней мере я рекомендовал бы работать rake поражать все, чтобы уверить, что ничто неожиданное не повредилось.

Простой рубин кажется идеальным для быстрого тестирования единственных файлов во время повторений.

Знайте, что выполнение всего через грабли может привести к различным результатам к выполнению всего индивидуально, когда я недавно нашел к своему беспорядку - я делал что-то немного неправильно в одном тесте, который работал успешно в изоляции, но это разбросало проблему, лежащую для последующего теста, который только обнаружился, когда я использовал грабли.

3
ответ дан 5 December 2019 в 14:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: