[rspec-users] using shared_context in a global way

David Chelimsky dchelimsky at gmail.com
Mon Apr 2 11:30:57 UTC 2012

On Sun, Apr 1, 2012 at 11:34 PM, Bradley <bradleyrobertson at gmail.com> wrote:
> I have some let and before declarations that I want to define for all of my
> tests.  I can't seem to figure out how to do this in a clean way (ie by
> including a module in my Rspec config).  I don't want to have to
> include_context for each test, I just want to run some before(:all) hooks
> and provide access to some default variables that example groups could
> override with their own let declarations.
> I must be missing something because I can't find anywhere in the docs how I
> might achieve this.  Any help is greatly appreciated.

There is a documented way to declare a module with let and before
declarations: http://rubydoc.info/gems/rspec-core/RSpec/Core/SharedContext.

There is also a documented way to include a module in every
ExampleGroup: http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration#include-instance_method

There is, admittedly, no doc that says you can use these two features
together. Obviously we can't do that for every pair of features, but
perhaps this pair is worth citing specifically. I'll look into doing
that for the next release.


More information about the rspec-users mailing list