class Regressor::Mongoid::ModelGenerator
Public Instance Methods
create_regression_files()
click to toggle source
# File lib/generators/regressor/mongoid/model_generator.rb, line 8 def create_regression_files load_application generate_mongoid_specs end
Private Instance Methods
generate_mongoid_specs()
click to toggle source
# File lib/generators/regressor/mongoid/model_generator.rb, line 15 def generate_mongoid_specs load_mongoid_models.each do |model| save_generate(model) do @model = ::Regressor::Model::MongoidModel.new(model) create_file "#{Regressor.configuration.regression_path}/mongoid/#{model.name.tableize.singularize}_spec.rb", ERB.new(File.new(File.expand_path('../../../templates/model/mongoid/model_template.erb', File.dirname(__FILE__))).read).result(binding) end end end
load_application()
click to toggle source
# File lib/generators/regressor/mongoid/model_generator.rb, line 25 def load_application Rails.application.try(:eager_load!) end
load_mongoid_models()
click to toggle source
# File lib/generators/regressor/mongoid/model_generator.rb, line 29 def load_mongoid_models models = Object.constants.collect { |sym| Object.const_get(sym) }. select { |constant| constant.class == Class && constant.include?(::Mongoid::Document) } models << models.map(&:subclasses) models.flatten.uniq.reject { |x| Regressor.configuration.excluded_models.include? x } end
save_generate(model) { || ... }
click to toggle source
# File lib/generators/regressor/mongoid/model_generator.rb, line 36 def save_generate(model) begin yield rescue => e puts "Cannot create model regression for #{model}. Reason #{e.message}" end end