[英]Testing a destroy action on a controller
有没有一种方法可以测试销毁操作方法,即如果记录被另一个模块使用(如果它是另一个表的外键),则不应删除该记录。
我正在使用Rails迷你测试。
谢谢
您可能需要在测试部分中使用事务块。
User.transaction do
User.destroy!
raise ActiveRecord::Rollback
end
当您尝试删除记录时,活动记录将引发异常,因为它无法删除数据。 因此,您的测试应为:
// add a record with a foreign key
begin
post :destroy
fail
rescue Exception => e
// assert the exception type
end
因此,如果操作抛出异常,则测试成功,否则失败。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.