gpt4 book ai didi

rspec - 作用域常量到rspec上下文

转载 作者:行者123 更新时间:2023-12-03 12:28:49 24 4
gpt4 key购买 nike

我经常想做

context "empty stack" do
SOME_CONSTANT = "value"
it "should be empty" do
# use SOME_CONSTANT
end
end

context "populated stack" do
SOME_CONSTANT = "a different value"
it "should have some items" do
# use SOME_CONSTANT
end
end

ruby不会将常量的作用域限定为闭包,因此它们会泄漏出去。有没有人有办法声明作用于上下文的常量?

最佳答案

更改常量的声明:
来自SOME_CONSTANT = "value"self::SOME_CONSTANT = "value"
RSpec为所遇到的每组规范(在您的示例中为上下文)创建一个匿名类。在匿名类中声明一个没有self::的常量,使其在全局范围内可用,并且对所有规范都是可见的。将常量声明更改为self::可以确保仅在匿名类中可见。

关于rspec - 作用域常量到rspec上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5230070/

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