我试图从 Sinatra 1.3.x 升级到 1.4.2。规格运行良好,但 Cucumber 失败:
undefined local variable or method `settings' for #<RechargeWorld:0x007ffbd606ba60> (NameError)
的相关部分env.rb
如下所示:
class RechargeWorld
include Capybara::DSL
include RSpec::Expectations
include RSpec::Matchers
def db
@db ||= CouchRest.database(settings.db)
end
end
其中一些代码(注意:我添加了该db
方法)是由cucumber-sintra生成的,它在 1.3.x 上运行良好,但在任何版本 1.4.x 上都失败了。最新版本的 cucumber-sinatra 生成基本相同的env.rb
.
该应用程序在 Github 上可用。
1.3.x 和 1.4 之间的设置散列是否有任何更改可能导致此问题?我做错了吗?