类: RSpec::Mocks::DirectObjectReference
- 继承
-
Object
- Object
- RSpec::Mocks::DirectObjectReference
- 定义于
- lib/rspec/mocks/object_reference.rb
概述
rspec-mocks 的引用接口实现。 当对象被传递给 ExampleMethods#object_double 或匿名类或模块被传递给 ExampleMethods#instance_double 或 ExampleMethods#class_double 时使用。 代表对该对象的引用。
实例方法摘要 折叠
-
#const_to_replace ⇒ Object
为与其他对象引用实现的接口一致性而定义。
-
#defined? ⇒ true
对于对象始终返回 true,因为类已定义。
-
#description ⇒ String
对象的描述(通过
#inspect
)。 -
#initialize(object) ⇒ DirectObjectReference 构造函数
DirectObjectReference 的新实例。
-
#target ⇒ Object
验证双打的目标(对象本身)。
-
#when_loaded {|Object| ... } ⇒ Object
如果引用目标已加载,则产生收益,提供了一种通用机制,可以根据需要仅在引用目标加载时运行一段代码。
构造函数详细信息
#initialize(object) ⇒DirectObjectReference
返回 DirectObjectReference 的新实例。
58 59 60 |
# File 'lib/rspec/mocks/object_reference.rb', line 58 def initialize(object) @object = object end |
实例方法详细信息
#const_to_replace ⇒Object
为与其他对象引用实现的接口一致性而定义。 抛出 ArgumentError
表示当将对象参数传递给 object_double
时 as_stubbed_const
无效。
70 71 72 73 |
# File 'lib/rspec/mocks/object_reference.rb', line 70 def const_to_replace raise ArgumentError, "Can not perform constant replacement with an anonymous object." end |
#defined? ⇒true
对于对象始终返回 true,因为类已定义。
85 86 87 |
# File 'lib/rspec/mocks/object_reference.rb', line 85 def defined? true end |
#description ⇒String
返回对象的描述(通过 #inspect
)。
63 64 65 |
# File 'lib/rspec/mocks/object_reference.rb', line 63 def description @object.inspect end |
#target ⇒Object
验证双打的目标(对象本身)。
78 79 80 |
# File 'lib/rspec/mocks/object_reference.rb', line 78 def target @object end |
#when_loaded {|Object| ... } ⇒Object
如果引用目标已加载,则产生收益,提供了一种通用机制,可以根据需要仅在引用目标加载时运行一段代码。
此特定实现始终产生收益,因为直接引用始终已加载。
97 98 99 |
# File 'lib/rspec/mocks/object_reference.rb', line 97 def when_loaded yield @object end |