sredder 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,6 @@
1
1
  require 'optparse'
2
2
  require 'optparse/time'
3
+ require 'debugger'
3
4
 
4
5
  module Sredder
5
6
  class ArgParser
@@ -17,8 +18,7 @@ module Sredder
17
18
  end
18
19
 
19
20
  def valid?
20
- ( options[:date] &&
21
- options[:title] &&
21
+ ( options[:title] &&
22
22
  options[:message] &&
23
23
  options[:hours]
24
24
  ) || (
@@ -1,6 +1,5 @@
1
1
  require 'oauth'
2
2
  require 'forwardable'
3
- require 'debugger'
4
3
 
5
4
  module Sredder
6
5
 
data/lib/sredder/util.rb CHANGED
@@ -2,9 +2,12 @@ module Sredder
2
2
 
3
3
  module Util
4
4
 
5
- # Wrike expects this "yyyy-MM-dd'T'HH:mm.ss"
5
+ ### Old: Wrike expects this "yyyy-MM-dd'T'HH:mm.ss"
6
+ ### time.strftime('%Y-%m-%d %R.00')
7
+ #
8
+ # Wrike expects this "yyyy-MM-dd"
6
9
  def self.time_stamp(time = Time.now)
7
- time.strftime('%Y-%m-%d %R.00')
10
+ time.strftime('%Y-%m-%d')
8
11
  end
9
12
 
10
13
  # just block execution until the user hits ENTER
@@ -15,4 +18,4 @@ module Sredder
15
18
 
16
19
  end
17
20
 
18
- end
21
+ end
@@ -1,3 +1,3 @@
1
1
  module Sredder
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.6"
3
3
  end
@@ -1,6 +1,5 @@
1
1
  require 'oauth'
2
2
  require 'forwardable'
3
- require 'debugger'
4
3
 
5
4
  module Sredder
6
5
 
data/lib/sredder.rb CHANGED
@@ -6,9 +6,12 @@ require "sredder/wrike_auth"
6
6
  require "sredder/wrike_request"
7
7
  require "sredder/github_auth"
8
8
  require "sredder/github_request"
9
+ require 'debugger'
9
10
 
10
11
  module Sredder
11
12
 
13
+ # When debugging, comment out the validate! call and use something like...
14
+ # > Sredder.run_command(['-t Hello', '-m Message', '-h3'])
12
15
  def self.run_command(argv)
13
16
  args_parser = ArgParser.new
14
17
  args_parser.parse(argv)
@@ -42,13 +45,13 @@ module Sredder
42
45
  request = WrikeRequest.new(access)
43
46
  request.post('/api/json/v2/wrike.folder.tree', {})
44
47
  regex = Regexp.new(Regexp.escape("SRED Time Tracking/#{folder}"))
45
- if request.success?
48
+
49
+ if request.json["error"]
50
+ puts request.json["error"]
51
+ else
46
52
  request.json["foldersTree"]["folders"].each_with_object([]) do |folder, arr|
47
53
  arr << folder['id'].to_i if folder['fullPath'] =~ regex
48
54
  end
49
- else
50
- puts request.json
51
- puts 'Invalid response from Wrike'
52
55
  end
53
56
  end
54
57
 
@@ -61,18 +64,34 @@ module Sredder
61
64
  status: 1,
62
65
  parents: parent_folder_ids
63
66
  })
64
- request.json["task"]["id"] if request.success?
67
+
68
+ if request.json["error"]
69
+ puts "#{request.json["error"]["code"]}: #{request.json["error"]["message"]}"
70
+ else
71
+ puts "Task Entry #: #{request.json["task"]["id"]}"
72
+ puts "Title: #{request.json["task"]["title"]}"
73
+ puts "Message: #{request.json["task"]["description"]}"
74
+ request.json["task"]["id"]
75
+ end
65
76
  end
66
77
 
67
78
  # Attaches a timelog entry to a Wrike task
68
79
  def self.create_timelog(access, date, task_id, hours, comment='')
69
80
  request = WrikeRequest.new(access)
81
+
70
82
  request.post('/api/json/v2/wrike.timelog.add', {
71
83
  date: date,
72
84
  taskId: task_id,
73
85
  hours: hours,
74
86
  comment: comment
75
87
  })
88
+
89
+ if request.json["error"]
90
+ puts "#{request.json["error"]["code"]}: #{request.json["error"]["message"]}"
91
+ else
92
+ puts "Timelog Entry #: #{request.json["timelog"]["id"]}"
93
+ puts "On #{request.json["timelog"]["date"]} for #{request.json["timelog"]["hours"]} hours with comment: '#{request.json["timelog"]["comment"]}'"
94
+ end
76
95
  end
77
96
 
78
97
  ### Github
@@ -84,7 +103,8 @@ module Sredder
84
103
  request.get("https://api.github.com/repos/cloudClinic/cloudClinic-Server/pulls/#{options[:github_id]}")
85
104
 
86
105
  options[:title] = request.json["title"]
87
- options[:message] = request.json["body"]
106
+ options[:message] = request.json["body"].gsub("\n", "<br>")
107
+ options[:date] = Util.time_stamp(Time.parse(request.json["created_at"]))
88
108
 
89
109
  options
90
110
  end
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,4 @@
1
1
  require 'spec_helper'
2
- # require 'debugger'
3
2
 
4
3
  RSpec.configure do |config|
5
4
  config.before :all do
metadata CHANGED
@@ -2,14 +2,14 @@
2
2
  name: sredder
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.5
5
+ version: 0.0.6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Matthew Robertson
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-21 00:00:00.000000000 Z
12
+ date: 2012-12-31 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  version_requirements: !ruby/object:Gem::Requirement