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

pulibrary / tigerdata-app / 6913411a-a715-4c75-a2f2-ee2e3c99ede7

26 Jun 2025 07:51PM UTC coverage: 71.565% (-0.6%) from 72.117%
6913411a-a715-4c75-a2f2-ee2e3c99ede7

Pull #1572

circleci

hectorcorrea
Shamless green code that creates a project in Mediaflux via a rake task that calls a service defined in Mediaflux.
Pull Request #1572: Create a project in MediaFlux via the tigerdata.project.create service

4 of 18 branches covered (22.22%)

0 of 32 new or added lines in 1 file covered. (0.0%)

9 existing lines in 5 files now uncovered.

2995 of 4185 relevant lines covered (71.57%)

484.49 hits per line

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

0.0
/app/models/mediaflux/project_create_service_request.rb
1
# frozen_string_literal: true
NEW
2
module Mediaflux
×
NEW
3
  class ProjectCreateServiceRequest < Request
×
NEW
4
    attr_reader :token, :service_name, :document
×
5

6
    # Constructor
7
    # @param session_token [String] the API token for the authenticated session
8
    # @param service_name  [String] Name of the service to run.
9
    #                               Can be any command like asset.namespace.list
10
    # @param token         [String] Optional User token for the person executing the command
11
    # @param document      [String] Optional xml document to pass on to the service.
12
    #                               Used to pass parameters to the command
13
    #
14
    # asset.script.execute :id path=/system/scripts/projectCreate.tcl
15
    #   :arg -name doi 10.123/456
16
    #   :arg -name directory test-308
17
    #   :arg -name title "hello world"
18
    #
19
    # => :result -id "2212" "<result><id>2213</id></result>"
20
    #
NEW
21
    def initialize(session_token:, doi:, directory:, title:, token: nil)
×
NEW
22
      super(session_token: session_token)
×
NEW
23
      @doi = doi
×
NEW
24
      @directory = directory
×
NEW
25
      @title = title
×
NEW
26
      @token = token
×
NEW
27
    end
×
28

29
    # Specifies the Mediaflux service to use when creating project
30
    # @return [String]
NEW
31
    def self.service
×
NEW
32
      "asset.script.execute"
×
NEW
33
    end
×
34

NEW
35
    private
×
36

NEW
37
      def build_http_request_body(name:)
×
NEW
38
        super do |xml|
×
NEW
39
          xml.args do
×
NEW
40
            xml.id "path=/system/scripts/projectCreate.tcl"
×
NEW
41
            xml.arg name: "doi" do
×
NEW
42
              xml.text(@doi)
×
NEW
43
            end
×
NEW
44
            xml.arg name: "directory" do
×
NEW
45
              xml.text(@directory)
×
NEW
46
            end
×
NEW
47
            xml.arg name: "title" do
×
NEW
48
              xml.text(@title)
×
NEW
49
            end
×
NEW
50
          end
×
NEW
51
        end
×
NEW
52
      end
×
NEW
53
  end
×
NEW
54
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