Skip to content
This repository has been archived by the owner on Jul 22, 2022. It is now read-only.

look up ActiveRecord::Base.descendants instead of .subclasses #27

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -49,7 +49,7 @@ Sprig.reap(target_env: 'integration')

#### Model List
If you only want to `reap` a subset of your models, you may provide a list of models
(`ActiveRecord::Base.subclasses`-only) or `ActiveRecord::Relations` (for pulling records based on
(`ActiveRecord::Base.descendants`-only) or `ActiveRecord::Relations` (for pulling records based on
scope):
```
# Rake Task
Expand Down
2 changes: 1 addition & 1 deletion lib/sprig/reap/association.rb
Expand Up @@ -22,7 +22,7 @@ def polymorphic?

def polymorphic_dependencies
return [] unless polymorphic?
@polymorphic_dependencies ||= ActiveRecord::Base.subclasses.select { |model| polymorphic_match? model }
@polymorphic_dependencies ||= ActiveRecord::Base.descendants.select { |model| polymorphic_match? model }
end

def polymorphic_match?(model)
Expand Down
2 changes: 1 addition & 1 deletion lib/sprig/reap/inputs/model.rb
Expand Up @@ -5,7 +5,7 @@ class Model
def self.valid_classes
@@valid_classes ||= begin
Rails.application.eager_load!
ActiveRecord::Base.subclasses
ActiveRecord::Base.descendants
end
end

Expand Down
4 changes: 2 additions & 2 deletions spec/lib/sprig/reap/inputs/model_spec.rb
Expand Up @@ -4,12 +4,12 @@
describe ".valid_classes" do
subject { described_class }

its(:valid_classes) { should == ActiveRecord::Base.subclasses }
its(:valid_classes) { should == ActiveRecord::Base.descendants }
end

describe ".default" do
it "instantiates a Sprig::Reap::Inputs::Model for each model" do
ActiveRecord::Base.subclasses.each do |model|
ActiveRecord::Base.descendants.each do |model|
Sprig::Reap::Inputs::Model.should_receive(:new).with(model)
end

Expand Down