Module: RSpec::AllRecordsValidator

Defined in:
lib/rspec/all_records_validator.rb,
lib/rspec/all_records_validator/version.rb

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.validate!(ignored_models: [], only_has_many: false) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'lib/rspec/all_records_validator.rb', line 7

def self.validate!(ignored_models: [], only_has_many: false)
  target_classes = ApplicationRecord.subclasses.reject {|klass| klass.abstract_class? || ignored_models.include?(klass) || (only_has_many && klass.reflect_on_all_associations(:has_many).blank?) }

  target_classes.each do |klass|
    klass.all.find_each do |obj|
      obj.validate!
    end
  end
end