Hi all
I'm trying to optimise my spec run time. I have 123 examples so far, which run
in ~4.2 seconds on average. But 116 of those will run in ~0.18 seconds. So,
obviously, I only want to run the slow ones when I change that code.
I've added `adapter: :slow` to the offending example group, which covers the
whole of exactly one file.
I've added this to the top of ./Guardfile:
ENV["GUARD"] = "true"
and this to my ./spec/spec_helper.rb:
RSpec.configure do |config|
config.filter_run(focus: true)
config.filter_run_excluding(adapter: :slow) if GUARD
config.run_all_when_everything_filtered = true
end
This is my terminal output:
=====
Running: spec/bitcoin/data_access/satoshi/bdb_satoshi_wallet_repository_spec.rb
No examples matched {:focus=>true}. Running all.
No examples were matched. Perhaps {:adapter=>:slow} is excluding everything?
0 examples: 100% |==========================================| Time: 00:00:00
Finished in 0.00028 seconds
0 examples, 0 failures
=====
This is not what I expected `config.run_all_when_everything_filtered = true`
but from the Relish docs it looks like I misunderstood.
Is this a bug, or a missing feature that could go into a future RSpec, or
something that would not make sense anyway (i.e.
`run_all_when_everything_filtered` really should only respect the tags from
`filter_run`)?
And more pragmatically, is there any way I can achieve what I want now, i.e.
have that one file's examples run but only when I save it?
Cheers
Ash
--
http://www.patchspace.co.uk/
http://www.linkedin.com/in/ashmoran
_______________________________________________
rspec-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/rspec-users