gpt4 book ai didi

ruby - 当需要 env.rb 中的文件时,如何摆脱已经初始化的常量警告?

转载 作者:数据小太阳 更新时间:2023-10-29 08:09:34 25 4
gpt4 key购买 nike

我需要 features/support/env.rb 中的一些文件:

['/helpers/*', '/pages/*', '/models/*'].each do |path|
Dir[File.dirname(__FILE__) + path].each { |file| require file }
end

(我这样做是因为我想在运行任何测试之前创建测试用户和其他一些东西。)

但似乎这些文件随后由 Cucumber 使用 load 加载,因为我收到大量警告,例如 Cucumber 加载它们时:

/home/andrey/dev/project/features/support/models/my_class.rb:2: warning: already initialized constant MyClass::MY_CONSTANT

场景开始时。我怎样才能摆脱这些警告?

最佳答案

您可以将代码包装在 silence_warnings block 中:

silence_warnings do
['/helpers/*', '/pages/*', '/models/*'].each do |path|
Dir[File.dirname(__FILE__) + path].each { |file| require file }
end
end

无论您尝试做什么,都可能有更好的方法,可以很好地配合您的测试框架,但上面的代码应该可以解决您的直接问题。

关于ruby - 当需要 env.rb 中的文件时,如何摆脱已经初始化的常量警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15498757/

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