Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

rspec-rails does not run tests under spec/lib

I put my specs for modules under lib folder into spec/lib, but I run neither rspec nor spec spec/ could get the spec in spec/lib get tested.

Is there anything needs to be configured for this? I am using rails 3.2.0, following is my 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
like image 303
larryzhao Avatar asked Mar 05 '12 13:03

larryzhao


1 Answers

You can adjust the patterns RSpec uses by setting config.pattern in your spec/spec_helper.rb file

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

This will make RSpec run all tests that are matched by the given pattern. (And also run the tests in spec/lib)

like image 70
Remon Oldenbeuving Avatar answered Sep 30 '22 17:09

Remon Oldenbeuving