Ошибка при использовании защиты в рельсах 3.1.1 - PullRequest
2 голосов
/ 05 февраля 2012

Эй, ребята, я следую учебному пособию по рельсам, найденному здесь http://net.tutsplus.com/tutorials/ruby/the-intro-to-rails-screencast-i-wish-i-had/, и я дошел до того, что вы используете охрану для выполнения юнит-тестов. Я продолжаю получать сообщение об ошибке, обнаруженной ниже, при использовании guard, я пытался установить гем activesupport, но, похоже, он все равно не работает Если у кого-нибудь есть какие-либо советы, как это исправить, я был бы признателен, спасибо:)

Я также использую 64-битную Ubuntu

chuck@chuck-laptop:~/rails/tasks$ bundle exec guard
Guard could not detect any of the supported notification libraries.
Guard is now watching at '/home/chuck/rails/tasks'
Guard::RSpec is running, with RSpec 2!
Running all specs
/home/chuck/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/test/unit/assertions.rb:5:in `<module:Test>': Unit is not a module (TypeError)
    from /home/chuck/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/test/unit/assertions.rb:4:in `<top (required)>'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:225:in `load_dependency'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-rails-2.8.1/lib/rspec/rails/adapters.rb:2:in `<top (required)>'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:225:in `load_dependency'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-rails-2.8.1/lib/rspec/rails.rb:10:in `<top (required)>'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:225:in `load_dependency'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/rails/tasks/spec/spec_helper.rb:4:in `<top (required)>'
    from /home/chuck/rails/tasks/spec/requests/tasks_spec.rb:1:in `require'
    from /home/chuck/rails/tasks/spec/requests/tasks_spec.rb:1:in `<top (required)>'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `load'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `block in load_spec_files'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `map'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `load_spec_files'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/command_line.rb:22:in `run'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:80:in `run_in_process'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:69:in `run'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:10:in `block in autorun'
Guard::RSpec is running, with RSpec 2!
Running all specs
/home/chuck/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/test/unit/assertions.rb:5:in `<module:Test>': Unit is not a module (TypeError)
    from /home/chuck/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/test/unit/assertions.rb:4:in `<top (required)>'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:225:in `load_dependency'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-rails-2.8.1/lib/rspec/rails/adapters.rb:2:in `<top (required)>'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:225:in `load_dependency'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-rails-2.8.1/lib/rspec/rails.rb:10:in `<top (required)>'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:225:in `load_dependency'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
    from /home/chuck/rails/tasks/spec/spec_helper.rb:4:in `<top (required)>'
    from /home/chuck/rails/tasks/spec/requests/tasks_spec.rb:1:in `require'
    from /home/chuck/rails/tasks/spec/requests/tasks_spec.rb:1:in `<top (required)>'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `load'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `block in load_spec_files'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `map'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `load_spec_files'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/command_line.rb:22:in `run'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:80:in `run_in_process'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:69:in `run'
    from /home/chuck/.rvm/gems/ruby-1.9.2-p290/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:10:in `block in autorun'
Bye bye...

Ответы [ 2 ]

1 голос
/ 07 апреля 2012

В качестве части урока, которому вы следуете, рассказчик использует «gem 'turn» »в файле gem. После прочтения некоторых других блогов я удалил этот драгоценный камень (все, что он делает, это вызывает довольно тестовый вывод) и перегруппировал. Охранник наконец стал функционировать. У меня все еще была другая ошибка, но она скажет мне, сколько тестов прошло и не прошло, а какие были какие. Надеюсь, это поможет.

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

ВОЗМОЖНОЕ РЕШЕНИЕ:

  1. Удалить поворот драгоценный камень из Gemfile.
  2. поворот удаления драгоценного камня

Я скопировал обходной путь отсюда

Кстати, я не хочу идти слишком далеко, но если вы решите эту проблему и выполнитеучебник, позвольте мне дать вам совет: если вы застряли на

Failure/Error: @task = Task.create :task => 'go to bed'
     ActiveRecord::StatementInvalid:
       Could not find table 'tasks'

Затем запустите эту команду:

rake

Проблема в том, что вместо этого они говорят вамдля запуска:

rake db:migrate

Это нормально, но не переносит тестовую базу данных.

Приветствия!

...