On Jun 4, 2011, at 2:55 PM, Tyson Tate wrote:
> I created a gem a few weeks ago that I think the RSpec community might be
> interested in: https://github.com/tysontate/scenario (and that I'd love to
> get feedback on). It supports RSpec 1 and 2.
>
> It aims to solve a few of the problems we've had with a large spec suite
> that's been built over several years:
> A veritable forest of global helper methods that often overlap in scope. Some
> of the method signatures on these methods are horrendous because people have
> tried to adapt, for example, a single "create_user" method to support too
> many different scenarios* — non-approved user, regular user, admin user, and
> so on.
> Expensive setup that doesn't allow granular control over what, exactly, gets
> set up without adding more options to the helper method or creating another
> redundant setup method.
> (This is the most important one.) Tons of redundant setup code. Throughout
> many large spec suites, you'll notice a lot of redundant setup code. This
> redundant code can easily be grouped into a scenario that can more easily be
> reused throughout your specs.
> I'd love to hear any feedback you guys might have. The readme should cover
> most of the bases, but please let me know if you have any questions. The
> current examples in the readme are a bit trivial and don't really make a
> strong case for the use of scenarios over mixins, but I'll try to come up
> with better examples soon.
>
> -Tyson
Hey Tyson,
I hate to be the bearer of "you can already do that", but, you can already do
that (as of rspec-core-2.6)
http://relishapp.com/rspec/rspec-core/dir/example-groups/shared-context
https://gist.github.com/1009111
The only difference that I see is the use of the term 'scenario', which could
be resolved with a couple of aliases.
WDYT?
David
_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users