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_sisn'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  |