Ruby on rails 3 如何为ActiveRecord多态关联编写Rspec测试
有没有人找到为ActiveRecord多态关联编写rspec示例的方法 我习惯于使用Thoughtbot的shoulda匹配,但我认为多态性超出了它的范围 为了清楚起见,我的模型会有类似的模式:Ruby on rails 3 如何为ActiveRecord多态关联编写Rspec测试,ruby-on-rails-3,activerecord,rspec,polymorphic-associations,shoulda,Ruby On Rails 3,Activerecord,Rspec,Polymorphic Associations,Shoulda,有没有人找到为ActiveRecord多态关联编写rspec示例的方法 我习惯于使用Thoughtbot的shoulda匹配,但我认为多态性超出了它的范围 为了清楚起见,我的模型会有类似的模式: class Person < ActiveRecord::Base attr_accessible :name has_one :address, as: :location_data_source accepts_nested_attributes_for :address en
class Person < ActiveRecord::Base
attr_accessible :name
has_one :address, as: :location_data_source
accepts_nested_attributes_for :address
end
class Company < ActiveRecord::Base
attr_accessible :name
has_one :address, as: :location_data_source
accepts_nested_attributes_for :address
end
class Address < ActiveRecord::Base
attr_accessible :street, :city
belongs_to :location_data_source, polymorphic: true
end
class-Person
您能更具体地回答您的问题吗?换句话说,由于使用多态关联,您觉得您无法测试应用程序行为的哪些方面?你能举一个你试图创建的RSpec测试的例子吗?嗨,彼得,我只是想确保关联以适当的方式进行(并不是说我想测试活动记录本身,我只是想确保我已经建立了关联,而不是进一步发现模型不正确,例如在视图/水豚级别)。我通常使用Thoughtbot的shoulda匹配来实现这一点,它们对大多数关联都非常有效,例如has_one或behing to;例如'should behing_to(:address)'就可以了。您是否在测试数据库上运行了迁移?请参阅和