module Detektiiv::FactoryRunnerPatch
Public Instance Methods
run()
click to toggle source
Calls superclass method
# File lib/detektiiv/factory_runner_patch.rb, line 5 def run logging_bad_factory_call super end
Private Instance Methods
logger()
click to toggle source
# File lib/detektiiv/factory_runner_patch.rb, line 30 def logger @logger ||= Logger.new("#{Detektiiv.configuration.logfile_path}") @logger.formatter = proc do |_severity, _datetime, _progname, msg| "#{msg}\n" end @logger end
logging_bad_factory_call()
click to toggle source
# File lib/detektiiv/factory_runner_patch.rb, line 13 def logging_bad_factory_call factory_defined_filename = FactoryBot .factory_by_name(@name) .instance_variable_get(:@definition) .instance_variable_get(:@declarations) .instance_variable_get(:@declarations)[0] .instance_variable_get(:@block) if factory_defined_filename&.to_s&.include?("#{Detektiiv.configuration.application_name}/spec/factories") || factory_defined_filename&.to_s&.include?('factory_bot') || factory_defined_filename.nil? return else logger.debug(filepath: factory_defined_filename) logger.debug(caller: caller.select {|i| i.include?("#{Detektiiv.configuration.application_name}/spec") }.to_s) end end