gpt4 book ai didi

ruby - 我如何在 Rspec 之外使用 rspec 期望和匹配器?

转载 作者:数据小太阳 更新时间:2023-10-29 07:14:13 27 4
gpt4 key购买 nike

我有一个脚本已经发展到需要做一些断言和匹配。

它是用 ruby​​ 编写的,我在 Gemfile 中包含了 rspec 并需要它。

我发现这篇关于如何在 irb 中使用的非常有用的 SO 帖子:

How to use RSpec expectations in irb

我还发现了以下内容:

Use RSpec's "expect" etc. outside a describe ... it block

class BF
include ::Rspec::Matchers

def self.test
expect(1).to eq(1)
end
end

BF.test

我在 expect 行遇到错误。

最佳答案

当您包含 一个模块时,它会使其方法可用于该类的实例。您的 test 方法是单例方法(“类方法”),而不是实例方法,因此永远无法访问混合模块提供的方法。要修复它,您可以执行以下操作:

class BF
include ::RSpec::Matchers

def test
expect(1).to eq(1)
end
end

BF.new.test

如果您希望RSpec::Matchers 方法可用于BF 的单例方法,您可以扩展 模块:

class BF
extend ::RSpec::Matchers

def self.test
expect(1).to eq(1)
end
end

BF.test

关于ruby - 我如何在 Rspec 之外使用 rspec 期望和匹配器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32593877/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com