On Jun 24, 2011, at 11:55 AM, Matt Wynne wrote:

> I've been trying to separate out some fast specs in a Rails app in a Gary 
> Bernhardt style[1], and I experimented with using tags.
> 
> The problem with using tags is that in order to scan the specs for examples 
> that match the tags, it loads every spec file, most of which require 
> spec_helper, which loads Rails, and so takes 5-6 seconds. Thereby totally 
> defeating the original purpose.
> 
> One idea I have is to put some if statements into spec_helper to check the 
> tags that were passed to RSpec and only load the rails env if necessary. Is 
> that possible?

What I'm about to tell you is used internally, is not a formal API, and is 
subject to change without notice. That said, for the moment,  you can do this:

if !RSpec.configuration.inclusion_filter[:no_rails]
  # ... load rails
end

rspec spec --tag no_rails

I created https://github.com/rspec/rspec-core/issues/416 to address formalizing 
an API for this. Comments/suggestions/patches welcome.

Cheers,
David

> Has anyone else tried doing anything like this?
> 
> cheers,
> Matt
> 
> m...@mattwynne.net
> 07974 430184
> 
> [1] 
> https://www.destroyallsoftware.com/screencasts/catalog/fast-tests-with-and-without-rails



_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to