我在Rails v2.3 中有一个代码,如下所示:MiniTest v4.7.5 :
class Pdf
def generator_class
return GeneratePDF::Image
end
end
module GeneratePDF
class Image
# ...
end
end
require_relative '../test_helper'
class PdfTest < ActiveSupport::TestCase
should "return the generator class" do
pdf = Factory.create(:pdf)
assert_equal GeneratePDF::Image, pdf.generator_class
end
end
当我使用minitest运行测试时,它失败并出现以下错误:
Failure:
<GeneratePDF::Image> expected but was <Pdf::GeneratePDF::Image>.
但是使用UnitTest传递相同的测试用例。
我可以通过在返回语句中为作用域解析添加前缀来解决此问题。
class Pdf
def generator_class
return ::GeneratePDF::Image
end
end
请让我知道为什么它的行为方式不同以及解决此问题的最佳方法。