Class: RSpec::Mocks::Constant
- Inherits:
 - 
      Object
        
- Object
 - RSpec::Mocks::Constant
 
 - Extended by:
 - 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)
- - (Object) hidden writeonly private
 - 
  
      - (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.
 - - (Object) previously_defined writeonly private
 - - (Object) stubbed writeonly private
 
Class Method Summary (collapse)
- 
  
      + (Constant) original(name) 
  
    
Queries rspec-mocks to find out information about the named constant.
 - + (Object) unmutated(name) private
 
Instance Method Summary (collapse)
- 
  
      - (Boolean) hidden? 
  
    
Whether or not rspec-mocks has hidden this constant.
 - 
  
      - (Constant) initialize(name) 
  
    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)
 
Methods included from RecursiveConstMethods
const_defined_on?, constants_defined_on, get_const_defined_on, normalize_const_name, recursive_const_defined?, recursive_const_get
Constructor Details
- (Constant) initialize(name)
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.
A new instance of Constant
      84 85 86 87 88 89  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 84 def initialize(name) @name = name @previously_defined = false @stubbed = false @hidden = false end  | 
  
Instance Attribute Details
- (Object) hidden=(value) (writeonly)
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.
      100 101 102  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 100 def hidden=(value) @hidden = value end  | 
  
- (String) name (readonly)
The fully qualified name of the constant.
      92 93 94  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 92 def name @name end  | 
  
- (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.
      97 98 99  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 97 def original_value @original_value end  | 
  
- (Object) previously_defined=(value) (writeonly)
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.
      100 101 102  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 100 def previously_defined=(value) @previously_defined = value end  | 
  
- (Object) stubbed=(value) (writeonly)
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.
      100 101 102  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 100 def stubbed=(value) @stubbed = value end  | 
  
Class Method Details
+ (Constant) original(name)
Queries rspec-mocks to find out information about the named constant.
      148 149 150 151  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 148 def self.original(name) mutator = ConstantMutator.find(name) mutator ? mutator.to_constant : unmutated(name) end  | 
  
+ (Object) unmutated(name)
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.
      132 133 134 135 136 137 138 139 140  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 132 def self.unmutated(name) const = new(name) const.previously_defined = recursive_const_defined?(name) const.stubbed = false const.hidden = false const.original_value = recursive_const_get(name) if const.previously_defined? const end  | 
  
Instance Method Details
- (Boolean) hidden?
Whether or not rspec-mocks has hidden this constant.
      122 123 124  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 122 def hidden? @hidden end  | 
  
- (Boolean) mutated?
Whether or not rspec-mocks has mutated (stubbed or hidden) this constant.
      110 111 112  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 110 def mutated? @stubbed || @hidden end  | 
  
- (Boolean) previously_defined?
Whether or not the constant was defined before the current example.
      104 105 106  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 104 def previously_defined? @previously_defined end  | 
  
- (Boolean) stubbed?
Whether or not rspec-mocks has stubbed this constant.
      116 117 118  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 116 def stubbed? @stubbed end  | 
  
- (Object) to_s Also known as: inspect
      126 127 128  | 
    
      # File 'lib/rspec/mocks/mutate_const.rb', line 126 def to_s "#<#{self.class.name} #{name}>" end  |