module FactoryTrace
Constants
- VERSION
Public Class Methods
configuration()
click to toggle source
# File lib/factory_trace.rb, line 63 def configuration @configuration ||= Configuration.new end
configure() { |configuration| ... }
click to toggle source
# File lib/factory_trace.rb, line 59 def configure yield(configuration) end
start()
click to toggle source
# File lib/factory_trace.rb, line 39 def start return unless configuration.enabled trace_definitions! if configuration.trace_definition? tracker.track! end
stop()
click to toggle source
# File lib/factory_trace.rb, line 46 def stop return unless configuration.enabled # This is required to exclude parent traits from +defined_traits+ FactoryBot.reload if configuration.mode?(:full) Writers::ReportWriter.new(configuration.out, configuration).write(Processors::FindUnused.call(defined, used)) elsif configuration.mode?(:trace_only) Writers::TraceWriter.new(configuration.out, configuration).write(defined, used) end end
Private Class Methods
defined()
click to toggle source
# File lib/factory_trace.rb, line 73 def defined @defined ||= Preprocessors::ExtractDefined.call end
trace_definitions!()
click to toggle source
# File lib/factory_trace.rb, line 81 def trace_definitions! FactoryBot::Factory.prepend(FactoryTrace::MonkeyPatches::Factory) FactoryBot::Trait.prepend(FactoryTrace::MonkeyPatches::Trait) FactoryBot::Syntax::Default::DSL.prepend(FactoryTrace::MonkeyPatches::Default::DSL) FactoryBot::DefinitionProxy.prepend(FactoryTrace::MonkeyPatches::DefinitionProxy) end
tracker()
click to toggle source
# File lib/factory_trace.rb, line 77 def tracker @tracker ||= Tracker.new end
used()
click to toggle source
# File lib/factory_trace.rb, line 69 def used @used ||= Preprocessors::ExtractUsed.call(tracker.storage) end