rspec_core_rake_task_with_ignore_patterns.rb
require 'rspec/core/rake_task'
unless defined?(RSpec::Core::RakeTaskWithIgnorePattern)
class RSpec::Core::RakeTaskWithIgnorePattern < RSpec::Core::RakeTask
attr_accessor :ignore_patterns
def setup_ivar(args)
super
self.ignore_pattern ||= []
end
def files_to_run
original_files_to_run = super
unless ENV.has_key?('SPEC')
original_files_to_run.exclude(*ignore_patterns)
end
original_files_to_run
end
end
end
with_ignore_patterns.rake
ignore_patterns_file = File.expand_path('.rspec-ignore')
ignore_patterns = File.readable?(ignore_patterns_file) ? [*File.read(ignore_patterns_file).lines] : []
RSpec::Core::RakeTaskWithIgnorePattern.new(test: spec_prerequisites) do |t|
t.ignore_patterns = ignore_patterns
end
spec/factories/**/*.rb