Class: RSpec::Mocks::Constant
- Inherits:
-
Object
- Object
- RSpec::Mocks::Constant
- Extended by:
- Support::RecursiveConstMethods
- Defined in:
- lib/rspec/mocks/mutate_const.rb
Overview
Provides information about constants that may (or may not) have been mutated by rspec-mocks.
Instance Attribute Summary (collapse)
-
- (String) name
readonly
The fully qualified name of the constant.
-
- (Object?) original_value
The original value (e.g. before it was mutated by rspec-mocks) of the constant, or nil if the constant was not previously defined.
Class Method Summary (collapse)
-
+ (Constant) original(name)
Queries rspec-mocks to find out information about the named constant.
Instance Method Summary (collapse)
-
- (Boolean) hidden?
Whether or not rspec-mocks has hidden this constant.
-
- (Constant) initialize(name) {|_self| ... }
constructor
private
A new instance of Constant.
-
- (Boolean) mutated?
Whether or not rspec-mocks has mutated (stubbed or hidden) this constant.
-
- (Boolean) previously_defined?
Whether or not the constant was defined before the current example.
-
- (Boolean) stubbed?
Whether or not rspec-mocks has stubbed this constant.
-
- (Object) to_s
(also: #inspect)
The default
to_s
isn't very useful, so a custom version is provided. -
- (Boolean) valid_name?
Whether or not the provided constant name is a valid Ruby constant name.
Constructor Details
- (Constant) initialize(name) {|_self| ... }
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Constant
11 12 13 14 15 16 17 18 |
# File 'lib/rspec/mocks/mutate_const.rb', line 11 def initialize(name) @name = name @previously_defined = false @stubbed = false @hidden = false @valid_name = true yield self if block_given? end |
Instance Attribute Details
- (String) name (readonly)
Returns The fully qualified name of the constant.
21 22 23 |
# File 'lib/rspec/mocks/mutate_const.rb', line 21 def name @name end |
- (Object?) original_value
Returns The original value (e.g. before it was mutated by rspec-mocks) of the constant, or nil if the constant was not previously defined.
26 27 28 |
# File 'lib/rspec/mocks/mutate_const.rb', line 26 def original_value @original_value end |
Class Method Details
+ (Constant) original(name)
Queries rspec-mocks to find out information about the named constant.
86 87 88 89 |
# File 'lib/rspec/mocks/mutate_const.rb', line 86 def self.original(name) mutator = ::RSpec::Mocks.space.constant_mutator_for(name) mutator ? mutator.to_constant : unmutated(name) end |
Instance Method Details
- (Boolean) hidden?
Returns Whether or not rspec-mocks has hidden this constant.
51 52 53 |
# File 'lib/rspec/mocks/mutate_const.rb', line 51 def hidden? @hidden end |
- (Boolean) mutated?
Returns Whether or not rspec-mocks has mutated (stubbed or hidden) this constant.
39 40 41 |
# File 'lib/rspec/mocks/mutate_const.rb', line 39 def mutated? @stubbed || @hidden end |
- (Boolean) previously_defined?
Returns Whether or not the constant was defined before the current example.
33 34 35 |
# File 'lib/rspec/mocks/mutate_const.rb', line 33 def previously_defined? @previously_defined end |
- (Boolean) stubbed?
Returns Whether or not rspec-mocks has stubbed this constant.
45 46 47 |
# File 'lib/rspec/mocks/mutate_const.rb', line 45 def stubbed? @stubbed end |
- (Object) to_s Also known as: inspect
The default to_s
isn't very useful, so a custom version is
provided.
62 63 64 |
# File 'lib/rspec/mocks/mutate_const.rb', line 62 def to_s "#<#{self.class.name} #{name}>" end |
- (Boolean) valid_name?
Returns Whether or not the provided constant name is a valid Ruby constant name.
57 58 59 |
# File 'lib/rspec/mocks/mutate_const.rb', line 57 def valid_name? @valid_name end |