Как мне остановить Минитест? - PullRequest
3 голосов
/ 04 августа 2011

В Ruby 1.9.1 я обнаружил, что ctrl + c убивает только один модульный тест, и вы не можете таким образом остановить выполнение всей программы тестирования.

Напротив, в тесте / модуле в Ruby 1.8 он останавливает все тесты.

Пример индикатора выполнения под 1.9.1:

ruby1.9.1 test/ts_foo.rb 
Loaded suite test/ts_foo
Started

.............................. ^ CF .............................................................................. ^ CE .................. ^ C ^ C ^ CE..E .. ^ C ^ C ^ C ^ CEE ^ CE^ CE ^ CE ^ CE ^ C ^ C ^ CEE ^ CE ^ CE ^ CE ^ CE ^ CE ^ CE .. ^ CE ... ^ C..E .. ^ CE ..... ^ CE .. ^CE ....... ^ C ^ C ^ CE.E. ^ CE ^ CE ^ C ^ CE ^ CE .. ^ .. ^ CE CE. ^ CE .. ^ CE ... ^ CE. ^ CE. ^ CE. ^ CE ... ^ CE .... ^ CE ..............

И под 1.8.7:

$ ruby test/ts_foo.rb 
Loaded suite test/ts_foo
Started

........................................................ ^ C.

Я запускаю это на Ubuntu Karmic Koala, а версии для Ruby

$ ruby1.9.1 --version
ruby 1.9.1p243 (2009-07-16 revision 24175) [x86_64-linux]
$ ruby --version
ruby 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux]

1 Ответ

2 голосов
/ 27 октября 2011

Похоже, что ruby-1.9.1 включает в себя очень древнюю версию минитеста. Это (необычное) поведение было исправлено довольно давно: minitest commit .

Решением может быть либо переход на более позднюю версию 1.9 (minitest для ruby-1.9.2 включает это исправление), либо обновление локального minitest ruby-1.9.1 (вручную или, мы надеемся, просто путем установки последней версии minitest gem).

...