• 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

95.45
/app/models/mediaflux/namespace_describe_request.rb
1
# frozen_string_literal: true
UNCOV
2
module Mediaflux
1✔
3
  # Describes a namespace
4
  # @example
5
  #   namespace = Mediaflux::NamespaceDescribeRequest.new(session_token: session_id).metadata
6
  #   => {:id=>"1", :path=>"/", :name=>"", :description=>"", :store=>"data"}
7
  # @example
8
  #   namespace = Mediaflux::NamespaceDescribeRequest.new(session_token: session_id, path: "/td-test-001/tigerdataNS").metadata
9
  #   => {:id=>"1182", :path=>"/td-test-001/tigerdataNS", :name=>"tigerdataNS", :description=>"TigerData client app root namespace", :store=>"db"}
UNCOV
10
  class NamespaceDescribeRequest < Request
1✔
UNCOV
11
    attr_reader :path, :id
1✔
12

13
    # Constructor
14
    # @param session_token [String] the API token for the authenticated session
15
    # @param path [String] path of the asset to be described
16
    # @param id [Integer] TODO: Define what this is and how to use it.
UNCOV
17
    def initialize(session_token:, path: nil, id: nil)
1✔
UNCOV
18
      super(session_token: session_token)
3✔
UNCOV
19
      @path = path
3✔
UNCOV
20
      @id = id
3✔
UNCOV
21
    end
22

23
    # Specifies the Mediaflux service to use
24
    # @return [String]
UNCOV
25
    def self.service
1✔
UNCOV
26
      "asset.namespace.describe"
6✔
UNCOV
27
    end
28

UNCOV
29
    def metadata
1✔
UNCOV
30
      @metadata ||= begin
3✔
UNCOV
31
                      xml = response_xml
3✔
UNCOV
32
                      node = xml.xpath("/response/reply/result/namespace")
3✔
UNCOV
33
                      {
UNCOV
34
                        id: node.xpath("@id").text,
3✔
UNCOV
35
                        path: node.xpath("./path").text,
UNCOV
36
                        name: node.xpath("./name").text,
UNCOV
37
                        description: node.xpath("./description").text,
UNCOV
38
                        store: node.xpath("./store").text
UNCOV
39
                      }
UNCOV
40
                    end
UNCOV
41
    end
42

UNCOV
43
    def exists?
1✔
44
      metadata[:id].present?
×
UNCOV
45
    end
46

UNCOV
47
    private
1✔
48

UNCOV
49
      def build_http_request_body(name:)
1✔
UNCOV
50
        super do |xml|
6✔
UNCOV
51
          xml.args do
6✔
UNCOV
52
            xml.id id if id.present?
6✔
UNCOV
53
            xml.namespace path if path.present?
6✔
UNCOV
54
          end
UNCOV
55
        end
UNCOV
56
      end
UNCOV
57
  end
UNCOV
58
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