Skip to content

Commit

Permalink
Add unique species scope and test
Browse files Browse the repository at this point in the history
  • Loading branch information
Yuji3000 committed Dec 28, 2024
1 parent a765c34 commit eab4d66
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 0 deletions.
3 changes: 3 additions & 0 deletions app/models/pet.rb
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,9 @@ class Pet < ApplicationRecord
query.where(published: true).order(:breed).distinct.pluck(:breed)
}

# Returns an array of unique species of an organization
scope :unique_species, -> { distinct.pluck(:species) }

attr_writer :toggle

# check if pet has any applications with adoption pending status
Expand Down
13 changes: 13 additions & 0 deletions test/models/pet_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,19 @@ class PetTest < ActiveSupport::TestCase
assert_not Pet.with_photo.include?(pet_without_image)
end
end

context ".unique_species" do
should "returns an array of unique species" do
create(:pet, species: "Dog")
create(:pet, species: "Cat")
create(:pet, species: "Dog")

unique_species = Pet.unique_species

assert_equal ["Cat", "Dog"], unique_species.sort
assert_equal 1, unique_species.count("Dog")
end
end
end

context "#has_adoption_pending?" do
Expand Down

0 comments on commit eab4d66

Please sign in to comment.