如何"期待(9)。成为> 6"是有效的表达?

时间:2015-04-29 07:38:31

标签: ruby rspec

RSpec doc中,我发现了一些像

一样奇怪的东西
expect(9).to be > 6

我不知道上面的表达式是如何有效的。

>怎么会这样?我搜索rspec github,但没有发现任何线索。

2 个答案:

答案 0 :(得分:3)

相当于

expect(9).to(be > 6)

相当于:

expect(9).to(be.>(6))

答案 1 :(得分:2)

在ruby中,您可以覆盖类的>运算符,在这种情况下是RSpec::Matchers::BuiltIn::Be类,这是be方法返回的。

如果要查看源代码,相关部分为here