我需要添加一些测试套件来声明Rails database.yml
的配置。我已将db语句超时配置为2000ms,我需要一种方法来断言该配置正在通过测试用例进行工作。
有2种测试方法:
ActiveRecord::Base.connection.execute(<<~SQL)
select pg_sleep(86400);
SQL
此代码将引发异常,但实际上会执行2500ms引发异常,因此我需要一种无需等待即可断言的方法 2500毫秒。
ActiveRecord::Base.connection.execute(<<~SQL)
select pg_sleep(86400);
SQL
答案 0 :(得分:0)
根据定义,如果没有等待超时,就无法测试超时是否正常工作。
您可以做的是,为测试环境专门设置一个较小的超时值 (例如500ms),并断言在睡眠600ms后会引发异常。