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

pulibrary / tigerdata-app / ae02137a-70bd-498e-bde2-dc1371c6d829

04 Nov 2025 07:51PM UTC coverage: 91.058% (-0.3%) from 91.403%
ae02137a-70bd-498e-bde2-dc1371c6d829

Pull #2128

circleci

hectorcorrea
Linked GitHub issue to TODO
Pull Request #2128: Project Show page now displays metadata straight from Mediaflux

64 of 71 new or added lines in 8 files covered. (90.14%)

742 existing lines in 45 files now uncovered.

2831 of 3109 relevant lines covered (91.06%)

530.85 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
3✔
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
3✔
UNCOV
11
    attr_reader :path, :id
3✔
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)
3✔
18
      super(session_token: session_token)
3✔
19
      @path = path
3✔
20
      @id = id
3✔
UNCOV
21
    end
22

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

UNCOV
29
    def metadata
3✔
30
      @metadata ||= begin
3✔
31
                      xml = response_xml
3✔
32
                      node = xml.xpath("/response/reply/result/namespace")
3✔
UNCOV
33
                      {
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?
3✔
44
      metadata[:id].present?
×
UNCOV
45
    end
46

UNCOV
47
    private
3✔
48

UNCOV
49
      def build_http_request_body(name:)
3✔
50
        super do |xml|
6✔
51
          xml.args do
6✔
52
            xml.id id if id.present?
6✔
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