|
View:
New views
3 Messages
—
Rating Filter:
Alert me
|
|
|
should_yield (is it needed?)I have the code working for this but I wanted an opinion on making a patch. I sometimes have the need to expect that a method will yield a block it's given. Usually this means something like this:
yielded = false subject.method { yielded = true } yielded.should == true which is a bit tedious and ugly. My solution might be just as ugly, but I wanted to get feedback because it saves that tedious code.
subject.method(&should_yield) I wrote a few methods, that when called, return an object with #to_proc that expects that the proc is called (or not called). I have the following forms available fairly simply:
subject.method(&should_not_yield) subject.method(&should_yield_with(object)) # Expects 3 yields, one with each argument [1,2,3].each(&should_yield_each(1,2,3))
I think this is a little cleaner and the code is very simple. I wanted to get an opinion on whether this is worth making into a patch. Tw: @martinemde _______________________________________________ rspec-devel mailing list rspec-devel@... http://rubyforge.org/mailman/listinfo/rspec-devel |
|
|
Re: should_yield (is it needed?)I happen to think that's brilliant.
Peter On Fri, Nov 6, 2009 at 10:43 PM, Martin Emde <martin.emde@...> wrote: > I have the code working for this but I wanted an opinion on making a patch. > I sometimes have the need to expect that a method will yield a block it's > given. Usually this means something like this: > yielded = false > subject.method { yielded = true } > yielded.should == true > which is a bit tedious and ugly. My solution might be just as ugly, but I > wanted to get feedback because it saves that tedious code. > subject.method(&should_yield) > I wrote a few methods, that when called, return an object with #to_proc that > expects that the proc is called (or not called). I have the following forms > available fairly simply: > subject.method(&should_not_yield) > subject.method(&should_yield_with(object)) > # Expects 3 yields, one with each argument > [1,2,3].each(&should_yield_each(1,2,3)) > > I think this is a little cleaner and the code is very simple. I wanted to > get an opinion on whether this is worth making into a patch. > Martin Emde > Tw: @martinemde > > _______________________________________________ > rspec-devel mailing list > rspec-devel@... > http://rubyforge.org/mailman/listinfo/rspec-devel > rspec-devel mailing list rspec-devel@... http://rubyforge.org/mailman/listinfo/rspec-devel |
|
|
Re: should_yield (is it needed?)On Fri, Nov 6, 2009 at 10:43 PM, Martin Emde <martin.emde@...> wrote:
Generally this looks really nice, and I can see the use, but it's so different from everything else that I need to think about it a bit more. Have you played around w/ any other syntax options that would be more aligned w/ the "actual.should matcher" format? Something like:
[1,2,3].should yield_on(:each) ??? _______________________________________________ rspec-devel mailing list rspec-devel@... http://rubyforge.org/mailman/listinfo/rspec-devel |
| Free embeddable forum powered by Nabble | Forum Help |