agile-cli 0.0.16 → 0.0.17
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.
- checksums.yaml +4 -4
- data/lib/agile/commands/projects.rb +0 -1
- data/lib/agile/commands/tickets.rb +98 -13
- data/lib/agile/constants.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 521321c656b38095a889ee5653abc64e365011c5f648b2afbb4922db0669c017
|
4
|
+
data.tar.gz: df1d70f25bdf24bda53580f2f38bedfd68ee548794ce693a6f1d0412e78b8a7c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4ff3af9c47007a471c744ef3507e2970696992d238b915eb653bedc69f6713abc76cd43325aab494b10ccd1be97448e406a6b6eecfad2641aed224ac138afefd
|
7
|
+
data.tar.gz: a0728122e058f9a4d19bab9921387afc4b7dddb40422483327188df96994dd0c46e0998a68f21d14a09de70de465d183a3b18597106a7639d654b7b2a9a73a3c
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# :reek:FeatureEnvy
|
2
|
+
|
1
3
|
module Agile
|
2
4
|
class Tickets < Thor
|
3
5
|
desc "create <ticket>", "Add new ticket"
|
@@ -15,7 +17,15 @@ module Agile
|
|
15
17
|
def list
|
16
18
|
response = RestClient.get "#{CONFIG['current_remote']}/api/v1/tickets/"
|
17
19
|
info = JSON.parse(response)
|
18
|
-
info
|
20
|
+
print_tickets_list(info)
|
21
|
+
end
|
22
|
+
|
23
|
+
desc "my_list", "Tickets list"
|
24
|
+
def my_list
|
25
|
+
response = RestClient.get "#{CONFIG['current_remote']}/api/v1/tickets/"
|
26
|
+
owner = []
|
27
|
+
JSON.parse(response).each { |ticket| owner << ticket if ticket["owner"] == CONFIG["current_user"] }
|
28
|
+
print_tickets_list(owner)
|
19
29
|
end
|
20
30
|
|
21
31
|
desc "show <name_ticket>", "Show ticket"
|
@@ -61,16 +71,6 @@ module Agile
|
|
61
71
|
end
|
62
72
|
end
|
63
73
|
|
64
|
-
# desc "my_list", "Your tickets list"
|
65
|
-
# def my_list
|
66
|
-
# CONFIG["tickets"].each do |name|
|
67
|
-
# if name == CONFIG["tickets"]
|
68
|
-
# say "* #{name}"
|
69
|
-
# else
|
70
|
-
# say name
|
71
|
-
# end
|
72
|
-
# end
|
73
|
-
# end
|
74
74
|
private
|
75
75
|
|
76
76
|
def output_ticket(row)
|
@@ -86,7 +86,7 @@ module Agile
|
|
86
86
|
|
87
87
|
def ticket_status
|
88
88
|
cli = HighLine.new
|
89
|
-
puts "0 - ToDo\n1 - Review\n2 -
|
89
|
+
puts "0 - ToDo\n1 - Review\n2 - Merged\n3 - In progress\n4 - Done\n5 - Archived"
|
90
90
|
cli.ask("Choose status of ticket (select number): ", Integer)
|
91
91
|
end
|
92
92
|
|
@@ -95,7 +95,7 @@ module Agile
|
|
95
95
|
new_ticket = choice.ask("Enter new name of ticket: ", String)
|
96
96
|
RestClient.put "#{CONFIG['current_remote']}/api/v1/tickets/#{ticket}",
|
97
97
|
name: ticket, new_name: new_ticket, type: 1,
|
98
|
-
user: CONFIG["current_user"]
|
98
|
+
user: CONFIG["current_user"], project_id: CONFIG["current_project_id"]
|
99
99
|
say "Updated from #{ticket} to #{new_ticket}"
|
100
100
|
end
|
101
101
|
|
@@ -107,6 +107,91 @@ module Agile
|
|
107
107
|
user: CONFIG["current_user"]
|
108
108
|
say "Updated description to #{new_description}"
|
109
109
|
end
|
110
|
+
|
111
|
+
def print_arr_to_do(arr)
|
112
|
+
@s_to_do = ""
|
113
|
+
arr.each do |element|
|
114
|
+
@s_to_do += element.to_s + "\n"
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
def print_arr_review(arr)
|
119
|
+
@s_review = ""
|
120
|
+
arr.each do |element|
|
121
|
+
@s_review += element.to_s + "\n"
|
122
|
+
end
|
123
|
+
end
|
124
|
+
|
125
|
+
def print_arr_merged(arr)
|
126
|
+
@s_merged = ""
|
127
|
+
arr.each do |element|
|
128
|
+
@s_merged += element.to_s + "\n"
|
129
|
+
end
|
130
|
+
end
|
131
|
+
|
132
|
+
def print_arr_in_progress(arr)
|
133
|
+
@s_in_progress = ""
|
134
|
+
arr.each do |element|
|
135
|
+
@s_in_progress += element.to_s + "\n"
|
136
|
+
end
|
137
|
+
end
|
138
|
+
|
139
|
+
def print_arr_done(arr)
|
140
|
+
@s_done = ""
|
141
|
+
arr.each do |element|
|
142
|
+
@s_done += element.to_s + "\n"
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
# rubocop:disable Metrics/MethodLength
|
147
|
+
def tickets_to_arrays(my_tickets)
|
148
|
+
@to_do = []
|
149
|
+
@review = []
|
150
|
+
@merged = []
|
151
|
+
@in_progress = []
|
152
|
+
@done = []
|
153
|
+
|
154
|
+
my_tickets.each do |ticket|
|
155
|
+
case ticket["status"]
|
156
|
+
when "todo"
|
157
|
+
@to_do.push(ticket["name"])
|
158
|
+
when "review"
|
159
|
+
@review.push(ticket["name"])
|
160
|
+
when "merged"
|
161
|
+
@merged.push(ticket["name"])
|
162
|
+
when "in_progress"
|
163
|
+
@in_progress.push(ticket["name"])
|
164
|
+
when "done"
|
165
|
+
@done.push(ticket["name"])
|
166
|
+
end
|
167
|
+
end
|
168
|
+
end
|
169
|
+
# rubocop:enable Metrics/MethodLength
|
170
|
+
|
171
|
+
def parse_tickets(all_tickets)
|
172
|
+
my_tickets = []
|
173
|
+
all_tickets.each { |ticket| my_tickets << ticket if ticket["project_id"] == CONFIG["current_project_id"] }
|
174
|
+
tickets_to_arrays(my_tickets)
|
175
|
+
end
|
176
|
+
|
177
|
+
def print_all_arrays
|
178
|
+
print_arr_to_do(@to_do)
|
179
|
+
print_arr_review(@review)
|
180
|
+
print_arr_merged(@merged)
|
181
|
+
print_arr_in_progress(@in_progress)
|
182
|
+
print_arr_done(@done)
|
183
|
+
end
|
184
|
+
|
185
|
+
def print_tickets_list(all_tickets)
|
186
|
+
parse_tickets(all_tickets)
|
187
|
+
print_all_arrays
|
188
|
+
table = Terminal::Table.new do |tbl|
|
189
|
+
tbl.title = CONFIG["current_project"]
|
190
|
+
tbl.headings = %w[todo review merged in_progress done]
|
191
|
+
tbl.rows = [[@s_to_do, @s_review, @s_merged, @s_in_progress, @s_done]]
|
192
|
+
end
|
193
|
+
say table
|
194
|
+
end
|
110
195
|
end
|
111
196
|
|
112
197
|
class CLI < Thor
|
data/lib/agile/constants.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: agile-cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- rubizza-camp
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-09-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: highline
|