最近我正在阅读rspec的源代码并且有很多问题。
1,rspec源代码中的以下代码含义是什么?
OptionParser < ::OptionParser
2,我发现当跑步者跑步时,有一个Spec :: Example :: ExampleGroup :: Subclass_n对象被创建,但我找不到这个Class定义的位置,需要帮助才能理解这一点。
我的rspec版本是1.3.0
答案 0 :(得分:1)
以下代码含义是什么? rspec源代码?
OptionParser < ::OptionParser
context有助于理解这一点。这是创建一个新类Spec::Runner::OptionParser
,它是top-level class OptionParser
的子类。 ::
强制它使用顶级类,以便它不会尝试子类化。
我发现当跑步者是 跑步,有一个 规格::实施例:: ExampleGroup :: Subclass_n 对象创建,但我找不到 这个Class定义的地方,需要帮助 明白这一点。
您创建的每个示例组都是动态定义的Spec::Example::ExampleGroup
子类。您可以看到它动态设置名称here的位置。