我正在使用Mongoid 3运行Rails 3.
我正在尝试删除活动记录并用Mongoid替换RSpec测试
这是我的配置/测试。
这是我的spec_helper.rb
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'rspec/autorun'
Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }
RSpec.configure do |config|
#config.fixture_path = "#{::Rails.root}/spec/fixtures"
#config.use_transactional_fixtures = true
config.infer_base_class_for_anonymous_controllers = false
config.order = "random"
config.before(:suite) do
DatabaseCleaner[:mongoid].strategy = :truncation
end
config.before(:each) do
DatabaseCleaner[:mongoid].start
end
config.after(:each) do
DatabaseCleaner[:mongoid].clean
end
end
这是我的Gemfile
(对于开发和测试)
group :development, :test do
gem 'sqlite3', '1.3.5'
gem 'rspec-rails', ">= 2.0.0.beta"
gem 'guard-rspec', '1.2.1'
gem 'guard-spork', '1.2.0'
gem 'childprocess', '0.3.6'
gem 'spork', '0.9.2'
end
group :test do
gem 'capybara', '1.1.2'
gem "database_cleaner", "~> 1.1.1"
gem 'factory_girl_rails', '4.1.0'
gem "rb-inotify", "~> 0.9.0"
gem "libnotify", "~> 0.8.0"
end
然而,当一个简单的数组拆分器测试(没有db动作)
require 'spec_helper'
describe ArrayHelper do
describe "split array" do
it "splits array up to three" do
testArray = [1,2]
result = splitTasks(testArray)
result.should eq(Array(Array(1),Array(2)))
end
我收到错误
`method_missing': undefined method `active_record' for #<Rails::Application::Configuration
想法?
端 端
答案 0 :(得分:1)
我认为你应该发表评论
require "active_record/railtie"
在config / application.rb文件中。
我希望这会有所帮助:)