rspec-rails не запускает тесты под spec / lib - PullRequest
8 голосов
/ 05 марта 2012

Я поместил свои спецификации для модулей в папке lib в spec/lib, но я не запускаю ни rspec, ни spec spec/, чтобы получить спецификации в spec/lib и пройти тестирование.

Что-нибудь нужно для этого настроить? Я использую рельсы 3.2.0, следующие мои spec_helper.rb

require 'rubygems'
require 'spork'
#uncomment the following line to use spork with the debugger
#require 'spork/ext/ruby-debug'

Spork.prefork do
  # Loading more in this block will cause your tests to run faster. However,
  # if you change any configuration or code from libraries loaded here, you'll
  # need to restart spork for it take effect.
# These lines are needed for SimpleCov to generate a complete coverage report
  require 'simplecov'
  SimpleCov.start 'rails'

  # This file is copied to spec/ when you run 'rails generate rspec:install'
  ENV["RAILS_ENV"] ||= 'test'
  require File.expand_path("../../config/environment", __FILE__)
  require 'rspec/rails'
  require 'rspec/autorun'

  # Requires supporting ruby files with custom matchers and macros, etc,
  # in spec/support/ and its subdirectories.
  Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}

  RSpec.configure do |config|
    config.infer_base_class_for_anonymous_controllers = false
    config.mock_with :rspec # use rspec's built-in mock objects

    require 'database_cleaner'

    config.before(:suite) do
      DatabaseCleaner.strategy = :truncation
      DatabaseCleaner.orm = "mongoid"
    end

    config.before(:each) do
      DatabaseCleaner.clean
    end  
  end

end

Spork.each_run do
  # This code will be run each time you run your specs.

end

1 Ответ

18 голосов
/ 05 марта 2012

Вы можете настроить шаблоны, которые использует RSpec, установив config.pattern в файле spec / spec_helper.rb

RSpec.configure do |config|
    config.pattern = "**/*_spec.rb"
end

Это позволит RSpec запускать все тесты, которые соответствуют данному шаблону.(А также запустить тесты в spec / lib)

...