Minitest-rails发电机

时间:2012-08-28 10:32:08

标签: ruby-on-rails minitest

我正在使用minitest-rails(https://github.com/blowmage/minitest-rails)并且它运行良好。然而,一个问题是发电机不工作。或者更确切地说,似乎总是调用“test_unit”!

这就是我的“test / minitest_helper.rb”的样子: https://gist.github.com/3496814 (注意我在那里覆盖了测试单元)

在“config / application.rb”中我有这个:

# require "rails/test_unit/railtie" ## Test Unit is not required!

还有:

## application.rb
config.generators do |g|
  g.test_framework :mini_test, :spec => true, :fixture => false
end


## Gemfile
group :test, :development do
  gem 'minitest-rails', git: "git://github.com/blowmage/minitest-rails.git"
  gem 'minitest-rails-capybara'
  gem 'factory_girl_rails'
  gem 'turn'
end

但是,在生成模型时,我得到了这个: ( - specs实际上并不重要。无论如何它会生成相同的东西)

rails g model Horse --spec
  invoke  active_record
  create    db/migrate/20120828095404_create_horses.rb
  create    app/models/horse.rb
  invoke    test_unit                   ### Invoking test_unit??!
  create      test/unit/horse_test.rb
  invoke      factory_girl
  create        test/factories/horses.rb

如果我只是手动创建文件,那么minitest就像魅力一样。

我还需要做些什么来让发电机正常工作吗?

目前使用Rails 3.2.7。

1 个答案:

答案 0 :(得分:1)

factory_girl_rails gem迫使生成器配置为Test::Unit的问题已由维护者修​​复,但尚未过滤到rubygems.org

如果您更新Gemfile以包含:

group :development, :test do
  gem 'factory_girl_rails', :git => "git://github.com/thoughtbot/factory_girl_rails.git"
end

它应该都很好用!

PS :执行此操作时,您也可以从:fixture => false删除application.rb,因为factory_girl_rails会为您设置此内容。