class FactoryTrace::Structures::Factory
Attributes
declaration_names[R]
definition_path[R]
names[R]
parent_name[R]
traits[R]
Public Class Methods
new(names, traits, parent_name: nil, declaration_names: [], definition_path: nil)
click to toggle source
@param [Array<String>] names @param [Array<FactoryTrace::Structure::Trait>] traits @param [String|nil] parent_name
@param [Array<String>] declaration_names
@param [String] definition_path
# File lib/factory_trace/structures/factory.rb, line 13 def initialize(names, traits, parent_name: nil, declaration_names: [], definition_path: nil) @names = names @traits = traits @parent_name = parent_name @declaration_names = declaration_names @definition_path = definition_path end
Public Instance Methods
==(factory)
click to toggle source
@return [Boolean]
# File lib/factory_trace/structures/factory.rb, line 42 def ==(factory) return false unless factory.is_a?(FactoryTrace::Structures::Factory) names == factory.names && traits == factory.traits && parent_name == factory.parent_name && declaration_names == factory.declaration_names && definition_path == factory.definition_path end
merge!(factory)
click to toggle source
Merge passed factory into self
@param [FactoryTrace::Structures::Factory]
# File lib/factory_trace/structures/factory.rb, line 35 def merge!(factory) factory.traits.each do |trait| traits << trait unless traits.any? { |t| t.name == trait.name } end end
to_h()
click to toggle source
@return [Hash<Symbol, Object>]
# File lib/factory_trace/structures/factory.rb, line 22 def to_h { names: names, traits: traits.map(&:to_h), parent_name: parent_name, declaration_names: declaration_names, definition_path: definition_path } end