[rspec-users] [SOLVED] Rspec + Shoulda + FactoryGirl = undefined method `reflect_on_association'

Dave david.mh.tong at gmail.com
Thu Feb 25 07:52:58 EST 2010


Thank you so much. I have been staring at this for way too long and
missed the obvious. I had a redundant active_matchers plugin that was
conflicting with shoulda.

Cheers,
Dave

On Feb 25, 1:15 am, David Chelimsky <dchelim... at gmail.com> wrote:
> On Wed, Feb 24, 2010 at 2:23 AM, Dave <david.mh.t... at gmail.com> wrote:
> > I have Rspec + Shoulda + FactoryGirl and I am receiving the following
> > error when attempting to call Shoulda's have_many or belong_to
> > methods. All Shoulda methods used in the "validations" group work
> > fine:
>
> >    >   NoMethodError in 'A Project
> >    > associations should When you call a
> >    > matcher in an example without a
> >    > String, like this:
> >    >
> >    >   specify { object.should matcher }
> >    >
> >    >   or this:
> >    >
> >    >   it { should matcher }
> >    >
> >    >   RSpec expects the matcher to have a
> >    > #description method. You should either   add a String to the
> > example this
> >    > matcher is being used in, or give it a
> >    > description method. Then you won't
> >    > have to suffer this lengthy warning
> >    > again.   '   undefined method
> >    > `reflect_on_association' for
> >    > #<Project:0x34d8624>   /vendor/plugins/active_matchers/lib/
> > matchers/association_matcher.rb:37:in
>
> What's active_matchers? I don't think that's part of rspec, shoulda,
> or factory_girl.
>
>
>
> >    > `confirm_association'
> >    > /vendor/plugins/active_matchers/lib/matchers/
> > association_matcher.rb:36:in
> >    > `each'
> >    > /vendor/plugins/active_matchers/lib/matchers/
> > association_matcher.rb:36:in
> >    > `confirm_association'
> >    > /vendor/plugins/active_matchers/lib/matchers/
> > association_matcher.rb:11:in
> >    > `matches?'
> >    > ./spec/models/project_spec.rb:7:
>
> > Thanks in advance
>
> > spec/spec_helper.rb
> > ==================================================================
>
> >    require 'shoulda'
>
> > spec/models/project_spec.rb
> > ==================================================================
>
> >    require File.dirname(__FILE__) + '/../spec_helper'
>
> >    describe "A Project" do
> >      describe "associations" do
>
> >        subject { Factory(:project) }
>
> >        it { should have_many(:tasks) }
> >        it { should belong_to(:project_status) }
> >      end
>
> >      describe "validations" do
> >        subject { Factory(:project) }
>
> >        it { should validate_presence_of(:name) }
>
> >        it { should validate_uniqueness_of(:name).case_insensitive }
>
> >        it { should allow_mass_assignment_of(:name) }
> >      end
> >    end
> > _______________________________________________
> > rspec-users mailing list
> > rspec-us... at rubyforge.org
> >http://rubyforge.org/mailman/listinfo/rspec-users
>
> _______________________________________________
> rspec-users mailing list
> rspec-us... at rubyforge.orghttp://rubyforge.org/mailman/listinfo/rspec-users


More information about the rspec-users mailing list