2010-08-02 8 views
13

Ich habe alle Schritte verfolgt, die ich online finden konnte, um Rails 3 mit Rspec 2 und Mocha zu konfigurieren. In meinem Gemfile:Getting Rails 3 Generatoren mit Rspec 2 und Mocha

group :development do 
    gem 'rails3-generators' 
    gem "rspec", '>= 2.0.0.beta.19' 
    gem "rspec-rails", '>= 2.0.0.beta.19' 
end 

group :test do 
    gem "faker" 
    gem "rspec", '>= 2.0.0.beta.19' 
    gem "rspec-rails", '>= 2.0.0.beta.19' 
    gem "machinist", '>= 2.0.0.beta1' 
    gem "mocha" 
    gem "capybara", ">= 0.3.9" 
end 

Und in spec/spec_helper.rb:

RSpec.configure do |config| 
    config.mock_with :mocha 
    config.fixture_path = "#{::Rails.root}/spec/fixtures" 
    config.use_transactional_fixtures = true 
end 

Dennoch, wenn ich den Rails-Generator ...

rails generate scaffold foo name:string 

... Ich habe das Folgende in spez/controllers/foos_controller_spec.rb:

def mock_foo(stubs={}) 
    @mock_foo ||= mock_model(Foo, stubs).as_null_object 
    end 

... was natürlich dazu führt, dass alle Spezifikationen fehlschlagen.

Weiß jemand, was ich vermisse?

Vielen Dank im Voraus.

+1

ich das gleiche Problem jetzt suchen. Hast du eine Lösung gefunden? Ich beschloss, die Tests einfach zu ändern, um Mokka zu verwenden, und verwandelte es dann in einen Generator. – stellard

+0

Nur eine Anmerkung hier .. Sie können rspec, rspec-rails und capybara in Ihrer Gemfile verwenden, ohne die Version jetzt anzugeben. Sie sind jetzt kompatibel mit Rails 3. – johnmcaliley

+0

Ich habe das gleiche Problem. Ich bin versucht, die bestehenden Generatoren zu modifizieren, aber ich möchte nicht etwas duplizieren, was jemand anderes bereits getan hat. –

Antwort