在我的rails 3应用程序中,我有一个lib文件夹:
/lib
/lib/abc/some_class.rb
/lib/abc/some_class/other.rb
some_class.rb:
module ABC
class SomeClass
end
end
other.rb
module ABC
class SomeClass::Other
def self.hello(a,b,c,)
false
end
end
end
如果我启动rails控制台,我可以这样做:
ABC::SomeClass::Other.hello(1,2,3)
并输出false
在我的rspec测试中,我有相同的一行:
result = ABC::SomeClass::Other.hello(1,2,3)
我得到了:
undefined method 'hello' for #<Class:0x.......>
这是命名空间问题吗?文件夹问题?
答案 0 :(得分:1)
rspec文件中的要求是什么?它需要包括some_class.rb和some_class \ other.rb(您可能需要修改加载路径以包含两者)