Skip to content

Commit d0fa2af

Browse files
author
Kirk Wang
authored
Merge pull request #2440 from samvera/add-member-methods-on-admin-set
Add member methods on AdminSetResource
2 parents a6c615a + 007e376 commit d0fa2af

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed

app/models/admin_set_resource.rb

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,12 @@ class AdminSetResource < Hyrax::AdministrativeSet
66
Hyrax::ValkyrieLazyMigration.migrating(self, from: ::AdminSet)
77

88
include WithPermissionTemplateShim
9+
10+
def member_of
11+
Hyrax.query_service.find_inverse_references_by(resource: self, property: :admin_set_id)
12+
end
13+
14+
def member_collection_ids
15+
member_of.map(&:id)
16+
end
917
end

spec/models/admin_set_resource_spec.rb

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
require 'spec_helper'
44

55
RSpec.describe AdminSetResource do
6-
subject(:admin_set) { described_class.new }
6+
subject(:admin_set) { FactoryBot.valkyrie_create(:hyku_admin_set) }
7+
let!(:resource) { FactoryBot.valkyrie_create(:generic_work_resource, admin_set_id: admin_set.id) }
78

89
it_behaves_like 'a Hyrax::AdministrativeSet'
910

@@ -19,4 +20,16 @@
1920
subject { described_class }
2021
its(:to_rdf_representation) { is_expected.to eq('AdminSet') }
2122
end
23+
24+
describe '#member_of' do
25+
it 'returns the resources in the admin set' do
26+
expect(subject.member_of).to eq [resource]
27+
end
28+
end
29+
30+
describe '#member_collection_ids' do
31+
it 'returns the collection ids of the resources in the admin set' do
32+
expect(subject.member_collection_ids).to eq [resource.id]
33+
end
34+
end
2235
end

0 commit comments

Comments
 (0)