• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pulibrary / orangelight / 00dbc10b-d747-4ad7-b211-7b26d753abbb

14 Aug 2025 01:25PM UTC coverage: 0.483% (-94.9%) from 95.343%
00dbc10b-d747-4ad7-b211-7b26d753abbb

push

circleci

web-flow
Merge pull request #5181 from pulibrary/dependabot/bundler/activestorage-7.2.2.2

Bump activestorage from 7.2.2.1 to 7.2.2.2

47 of 9721 relevant lines covered (0.48%)

0.01 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/app/models/requests/service_eligibility/abstract_on_shelf.rb
1
# frozen_string_literal: true
2
module Requests
×
3
  module ServiceEligibility
×
4
    class AbstractOnShelf
×
5
      def initialize(requestable:, patron:)
×
6
        @requestable = requestable
×
7
        @user = patron.user
×
8
        @patron = patron
×
9
      end
×
10

11
      def to_s
×
12
        raise "Please implement to_s in the subclass"
×
13
      end
×
14

15
      def eligible?
×
16
        requestable_eligible? && user_eligible?
×
17
      end
×
18

19
        protected
×
20

21
          def requestable_eligible?
×
22
            raise "Please implement requestable_eligible? in the subclass"
×
23
          end
×
24

25
          def user_eligible?
×
26
            provider_eligible? && patron_group_eligible?
×
27
          end
×
28

29
          def on_shelf_eligible?
×
30
            !requestable.aeon? && !requestable.charged? &&
×
31
              !requestable.in_process? &&
×
32
              !requestable.on_order? &&
×
33
              requestable.alma_managed? &&
×
34
              !(requestable.recap? || requestable.recap_pf?) &&
×
35
              !requestable.held_at_marquand_library?
×
36
          end
×
37

38
          def provider_eligible?
×
39
            user.cas_provider? || user.alma_provider?
×
40
          end
×
41

42
          def patron_group_eligible?
×
43
            allowed_patron_groups.include?(patron.patron_group)
×
44
          end
×
45

46
          def allowed_patron_groups
×
47
            @allowed_patron_groups ||= %w[P REG GRAD SENR UGRD]
×
48
          end
×
49

50
          attr_reader :requestable, :user, :patron
×
51
    end
×
52
  end
×
53
end
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc