[rspec-users] be_none and be_any don't seem to work properly
iain at iain.nl
Thu Oct 22 11:10:49 EDT 2009
On Oct 21, 5:45 pm, David Chelimsky <dchelim... at gmail.com> wrote:
> On Oct 19, 2009, at 2:12 PM, iain wrote:
> > Hi all!
> > I'm testing some named scopes. I use be_all(&:some_predicate) to test
> > if all the elements in the collection are valid, which works, but when
> > I try to test the inverse, it fails.
> > You can see the complete code at:http://gist.github.com/213636
> > But in short:
> > subject = User.active
> > subject.should be_all(&:active) # works
> > inverse = User.all - subject
> > inverse.none?(&:active).should be_true # works
> > inverse.should be_none(&:active) # doesn't work
> > And also "inverse.should_not be_any(&:active)" doesn't work either
> > And I cannot figure out why. The RDoc of rspec or rspec-rails don't
> > mention be_none or be_any, so I would think that this would be
> > straightforward. Anyone any ideas?
> I'm not certain, but I _think_ that the problem is the way you're
> setting up the factories. Try just creating the objects directly and
> see what happens:
> > Thanks in advance,
> > Iain - iain.nl
> > _______________________________________________
> > rspec-users mailing list
> > rspec-us... at rubyforge.org
> rspec-users mailing list
> rspec-us... at rubyforge.orghttp://rubyforge.org/mailman/listinfo/rspec-users
Nope, no difference.
The arrays with records are all fine when I inspect them, just as I
The message "expected any? to return false" looks okay, so the only
thing I can imagine is that it doesn't send it to the right receiver.
I've made an inverse selection too, where I match be_any on subject,
but to no avail.
I've also tried it without named_scopes, again not changing the
But then again, why should "all?" work, but "any?" or "none?" not?
More information about the rspec-users