gpt4 book ai didi

ruby - RSpec/Ruby - 在 `let` block 中创建一个过程

转载 作者:太空宇宙 更新时间:2023-11-03 18:11:05 25 4
gpt4 key购买 nike

我想定义一个 Proc 传递给各种方法,我想在 let block 中定义它

let(:proc) { Proc.new { |f| f.write("c1,c2,c3") } }

但是我总是报错

ArgumentError: tried to create Proc object without a block

虽然Proc明明有block。当我在 IRB 中单独执行 Proc 时,它起作用了,所以我怀疑这与 let 初始化它的方式有关。

有没有办法解决这个问题?

谢谢!

最佳答案

我无法复制这个。也许您有旧版本的 RSpec?

无论如何,不​​要忘记 procProc.new 的 Ruby 简写:

proc { "hello" }.call
# "hello"

proc
# ArgumentError

您可能只是遇到了命名冲突。尝试将 let 参数名称更改为“proc”以外的名称。

关于ruby - RSpec/Ruby - 在 `let` block 中创建一个过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34027158/

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