相关疑难解决方法(0)

如何在Rails 3中测试作用域

在Rails 3中测试作用域的最佳方法是什么.在rails 2中,我会做类似的事情:

Rspec的:

it 'should have a top_level scope' do
  Category.top_level.proxy_options.should == {:conditions => {:parent_id => nil}}
end
Run Code Online (Sandbox Code Playgroud)

这在rails 3中失败,并为[]:ActiveRecord :: Relation"错误提供了"未定义的方法`proxy_options'.

人们如何测试使用正确的选项指定范围?我看到你可以检查一下arel对象,也许可以对此做出一些期望,但我不确定最好的方法是什么.

ruby-on-rails ruby-on-rails-3

24
推荐指数
3
解决办法
1万
查看次数

我怎样才能对我的默认范围进行rspec测试

我的模型有default_scope(:order =>'created_at')我的测试(rspec,factory girl,shoulda等)是:

require 'spec/spec_helper.rb'

describe CatMembership do
  context "is valid" do
    subject { Factory.build(:cat_membership) }
    it { should be_valid }
    it { should belong_to :cat}
    it { should belong_to :cat_group}
    it { should have_db_column(:start_date)}
    it { should have_db_column(:end_date)}
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby testing scope rspec default-scope

18
推荐指数
1
解决办法
8293
查看次数