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

pulibrary / tigerdata-app / 8d70f2ab-acc5-4aab-b64b-743d66ddd2eb

29 Aug 2025 06:22PM UTC coverage: 87.983% (-0.1%) from 88.118%
8d70f2ab-acc5-4aab-b64b-743d66ddd2eb

Pull #1801

circleci

JaymeeH
Merge branch '1586-request-mailer' of https://github.com/pulibrary/tiger-data-app into 1586-request-mailer
Pull Request #1801: 1586 request mailer

10 of 10 new or added lines in 2 files covered. (100.0%)

1173 existing lines in 56 files now uncovered.

2482 of 2821 relevant lines covered (87.98%)

317.98 hits per line

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

100.0
/app/services/pul_datacite.rb
1
# frozen_string_literal: true
UNCOV
2
class PULDatacite
1✔
UNCOV
3
  class << self
1✔
4
    # Determines whether or not a test DOI should be referenced
5
    # (this avoids requests to the DOI API endpoint for non-production deployments)
6
    # @return [Boolean]
UNCOV
7
    def publish_test_doi?
1✔
UNCOV
8
      (Rails.env.development? || Rails.env.test?) && Rails.configuration.datacite.user.blank?
12✔
UNCOV
9
    end
UNCOV
10
  end
11

UNCOV
12
  attr_reader :datacite_connection
1✔
13

UNCOV
14
  def initialize
1✔
UNCOV
15
    @datacite_connection = Datacite::Client.new(username: Rails.configuration.datacite.user,
13✔
UNCOV
16
                                                password: Rails.configuration.datacite.password,
UNCOV
17
                                                host: Rails.configuration.datacite.host)
UNCOV
18
  end
19

UNCOV
20
  def draft_doi
1✔
UNCOV
21
    if PULDatacite.publish_test_doi?
13✔
UNCOV
22
      Rails.logger.info "Using hard-coded test DOI during development."
10✔
UNCOV
23
      "10.34770/tbd"
10✔
UNCOV
24
    else
UNCOV
25
      result = datacite_connection.autogenerate_doi(prefix: Rails.configuration.datacite.prefix)
2✔
UNCOV
26
      if result.success?
2✔
UNCOV
27
        result.success.doi
1✔
UNCOV
28
      else
UNCOV
29
        raise("Error generating DOI. #{result.failure.status} / #{result.failure.reason_phrase}")
1✔
UNCOV
30
      end
UNCOV
31
    end
UNCOV
32
  end
UNCOV
33
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