Class: TrackerDeliveriesCommand

Inherits:
Object
  • Object
show all
Defined in:
lib/tracker_deliveries_command.rb

Instance Method Summary collapse

Constructor Details

#initialize(tracker_deliveries = TrackerDeliveries::Main) ⇒ TrackerDeliveriesCommand



4
5
6
# File 'lib/tracker_deliveries_command.rb', line 4

def initialize(tracker_deliveries = TrackerDeliveries::Main)
  @tracker_deliveries = tracker_deliveries
end

Instance Method Details

#main(args = nil) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/tracker_deliveries_command.rb', line 12

def main args = nil
  project_id = args.match(
    /--tracker:project[= ] ?([0-9]*)/
  )[1] rescue nil

  api_token = args.match(
    /--tracker:token[= ]?([^ ]*)/
  )[1] rescue nil

  format = args.match(
    /--(format: *)?(markdown|html)/
  )[2] rescue "plaintext" # default

  begin
    STDOUT.puts @tracker_deliveries
      .new({format: format, project_id: project_id, api_token: api_token})
      .delivered_stories
  rescue SystemExit
    readme = File.read File.join(path_to_resources, "README.md")

    STDERR.puts "\nTracker Deliveries\n------------------\n\n",
                readme
                  .match(/(Usage:\n.*?\n)\* \* \*/m)[1]
                  .delete('`')
                  .gsub(/\n{3,}/,"\n\n")
  end
end

#path_to_resourcesObject



8
9
10
# File 'lib/tracker_deliveries_command.rb', line 8

def path_to_resources
  File.join(File.dirname(File.expand_path(__FILE__)), '../')
end