Class: FactoryBot::Decorator
- Inherits:
- BasicObject
- Defined in:
- lib/factory_bot/decorator.rb,
lib/factory_bot/decorator/attribute_hash.rb,
lib/factory_bot/decorator/new_constructor.rb,
lib/factory_bot/decorator/invocation_tracker.rb,
lib/factory_bot/decorator/disallows_duplicates_registry.rb
Direct Known Subclasses
AttributeHash, DisallowsDuplicatesRegistry, InvocationTracker, NewConstructor
Defined Under Namespace
Classes: AttributeHash, DisallowsDuplicatesRegistry, InvocationTracker, NewConstructor
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(component) ⇒ Decorator
constructor
A new instance of Decorator.
-
#method_missing(name, *args, &block) ⇒ Object
rubocop:disable Style/MissingRespondToMissing.
- #respond_to_missing?(name, include_private = false) ⇒ Boolean
- #send(symbol, *args, &block) ⇒ Object
Constructor Details
#initialize(component) ⇒ Decorator
Returns a new instance of Decorator.
5 6 7 |
# File 'lib/factory_bot/decorator.rb', line 5 def initialize(component) @component = component end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(name, *args, &block) ⇒ Object
rubocop:disable Style/MissingRespondToMissing
20 21 22 |
# File 'lib/factory_bot/decorator.rb', line 20 def method_missing(name, *args, &block) # rubocop:disable Style/MissingRespondToMissing @component.send(name, *args, &block) end |
Class Method Details
.const_missing(name) ⇒ Object
33 34 35 |
# File 'lib/factory_bot/decorator.rb', line 33 def self.const_missing(name) ::Object.const_get(name) end |
Instance Method Details
#respond_to_missing?(name, include_private = false) ⇒ Boolean
29 30 31 |
# File 'lib/factory_bot/decorator.rb', line 29 def respond_to_missing?(name, include_private = false) @component.respond_to?(name, true) || super end |
#send(symbol, *args, &block) ⇒ Object
24 25 26 |
# File 'lib/factory_bot/decorator.rb', line 24 def send(symbol, *args, &block) __send__(symbol, *args, &block) end |