пытается запустить "тест рейка" в исходном коде rails - PullRequest
5 голосов
/ 04 февраля 2012

Я только что клонировал исходный код rails из github и попытался запустить набор тестов ... У меня возникли серьезные сбои:

patrick@vincent:~/coding/rails/rails(master)>bundle exec rake test --trace
** Invoke test (first_time)
** Execute test
/Users/patrick/.rvm/rubies/ruby-1.9.2-p180/bin/ruby -w -I"lib:test" -I"/Users/patrick/.rvm/gems/ruby-1.9.2-p180@rails_patch/gems/rake-0.9.2.2/lib" "/Users/patrick/.rvm/gems/ruby-1.9.2-p180@rails_patch/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb" "test/**/*_test.rb" 
/Users/patrick/coding/rails/rails/activesupport/lib/active_support/test_case.rb:20:in `<class:TestCase>': undefined method `register_spec_type' for ActiveSupport::TestCase:Class (NoMethodError)
    from /Users/patrick/coding/rails/rails/activesupport/lib/active_support/test_case.rb:11:in `<module:ActiveSupport>'
    from /Users/patrick/coding/rails/rails/activesupport/lib/active_support/test_case.rb:10:in `<top (required)>'
    from /Users/patrick/coding/rails/rails/activesupport/test/benchmarkable_test.rb:3:in `<top (required)>'
    from /Users/patrick/.rvm/gems/ruby-1.9.2-p180@rails_patch/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb:10:in `require'
    from /Users/patrick/.rvm/gems/ruby-1.9.2-p180@rails_patch/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb:10:in `block (2 levels) in <main>'
    from /Users/patrick/.rvm/gems/ruby-1.9.2-p180@rails_patch/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb:9:in `each'
    from /Users/patrick/.rvm/gems/ruby-1.9.2-p180@rails_patch/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb:9:in `block in <main>'
    from /Users/patrick/.rvm/gems/ruby-1.9.2-p180@rails_patch/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb:4:in `select'
    from /Users/patrick/.rvm/gems/ruby-1.9.2-p180@rails_patch/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb:4:in `<main>'
rake aborted!
Command failed with status (1): [/Users/patrick/.rvm/rubies/ruby-1.9.2-p180...]

Tasks: TOP => test
(See full trace by running task with --trace)

И после этого появляется намного больше похожих ошибок, которые выглядят довольно честноидентичен, поэтому я не буду вставлять его сюда ...

Кто-нибудь знает, как я могу запустить эти тесты?

1 Ответ

9 голосов
/ 07 февраля 2012

Вы работаете под ruby ​​1.9.2.Основная ветка rails (также известная как Rails 4) требует ruby ​​1.9.3 или выше.Отсутствующий метод register_spec_type будет решен с помощью ruby ​​1.9.3.

Я вижу, что вы используете RVM, и это здорово.Это упростит обновление до 1.9.3 ...

В зависимости от того, сколько лет вашей копии RVM, вам может потребоваться обновить ее до:

$ rvm get stable

Затем убедитесь, что выу вас установлен ruby ​​1.9.3 и вы его используете:

$ rvm install 1.9.3
$ rvm use 1.9.3

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

$ bundle install

Теперь вы сможетеуспешно выполнить тесты с:

$ bundle exec rake test
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...