My guess is that it is checking for an compound index on all of those fields. Try specifying them individually and not in an array.
On Fri, Sep 2, 2011 at 7:07 PM, slavix <mikerin.sl...@gmail.com> wrote: > now getting > Failure/Error: it { should > have_db_index([:user, :currency, :tradable]) } > Expected Balance to have a index on columns user and currency > and tradable () > > but the indexes are in the db.. (dev and test) > Indexes: > Action Keyname Type > Unique Packed Field Cardinality Collation Null Comment > Edit Drop PRIMARY BTREE Yes No > id 0 > A > Edit Drop index_balances_on_currency_id BTREE No No > currency_id 0 A > YES > Edit Drop index_balances_on_tradable_id BTREE No No > tradable_id 0 A > YES > Edit Drop index_balances_on_user_id BTREE No No > user_id 0 A > YES > > my migration has > def self.up > create_table :balances do |t| > t.belongs_to :user, :nil => false > t.belongs_to :currency, :nil => false > t.belongs_to :tradable, :nil => false > t.decimal :amount, :precision => 16, :scale => 8, :default => > 0.0 > > t.timestamps > end > add_index :balances, :user_id > add_index :balances, :currency_id > add_index :balances, :tradable_id > end > > > On Sep 2, 6:17 am, David Chelimsky <dchelim...@gmail.com> wrote: >> On Sep 2, 2011, at 4:12 AM, slavix wrote: >> >> > Hello, >> > I am developing a rails 3.1 app. My Gemfile has shoulda gems >> > Gemfile >> > .. >> > gem "shoulda" >> > gem "shoulda-matchers" >> >> You only need shoulda-matchers if you're using rspec. >> >> > In a model spec I have >> > spec file >> > it { should have_indices([:user, :currency]) } >> >> > And I get this error... >> >> > NoMethodError: >> > undefined method `has_indices?' for #<Balance:0xf3b860c> >> >> When there is no have_xxx method defined, rspec-expectations implements >> method_missing such that it assumes you want to send the object the has_xxx? >> predicate. What your experiencing suggests that there is no have_indices >> method. Looking >> athttp://rdoc.info/github/thoughtbot/shoulda-matchers/master/Shoulda/Ma..., >> I see a singular have_db_index matcher, but I don't see a pluralized one, so >> perhaps this method doesn't exist. If it does, then something is wrong with >> your configuration, as it is not being made available. >> >> HTH, >> David >> _______________________________________________ >> rspec-users mailing list >> rspec-us...@rubyforge.orghttp://rubyforge.org/mailman/listinfo/rspec-users > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users > _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users