class Regressor::FactoryGenerator
Public Instance Methods
create_regression_files()
click to toggle source
# File lib/generators/regressor/factory_generator.rb, line 7 def create_regression_files load_application generate_factories end
Private Instance Methods
generate_factories()
click to toggle source
# File lib/generators/regressor/factory_generator.rb, line 14 def generate_factories load_ar_models.each do |model| save_generate(model) do @model = ::Regressor::Model::FactoryModel.new(model) create_file "#{Regressor.configuration.regression_factory_path}/#{model.underscore.singularize}_factory.rb", ERB.new(File.new(File.expand_path('../../templates/factory/factory_template.erb', File.dirname(__FILE__))).read).result(binding) end end end
load_application()
click to toggle source
# File lib/generators/regressor/factory_generator.rb, line 24 def load_application Rails.application.try(:eager_load!) end
load_ar_models()
click to toggle source
# File lib/generators/regressor/factory_generator.rb, line 28 def load_ar_models if defined?(::ActiveRecord::Base) ActiveRecord::Base.descendants.map(&:name).reject { |x| Regressor.configuration.excluded_models.include? x } else [] end end
save_generate(model) { || ... }
click to toggle source
# File lib/generators/regressor/factory_generator.rb, line 36 def save_generate(model) begin yield rescue => e puts "Cannot create factory for #{model}. Reason #{e.message}" end end