lazylead 0.3.1 → 0.5.0

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.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/.0pdd.yml +4 -1
  3. data/.docs/accuracy.md +107 -0
  4. data/.docs/accuracy_email.jpg +0 -0
  5. data/.docs/accuracy_jira_comment.jpg +0 -0
  6. data/.docs/duedate_expired.md +3 -3
  7. data/.docs/propagate_down.md +4 -4
  8. data/.gitattributes +1 -0
  9. data/.github/dependabot.yml +6 -0
  10. data/.pdd +1 -1
  11. data/.rubocop.yml +6 -0
  12. data/Rakefile +2 -0
  13. data/bin/lazylead +7 -4
  14. data/lazylead.gemspec +5 -4
  15. data/lib/lazylead/exchange.rb +16 -9
  16. data/lib/lazylead/log.rb +30 -8
  17. data/lib/lazylead/model.rb +78 -22
  18. data/lib/lazylead/opts.rb +80 -0
  19. data/lib/lazylead/postman.rb +1 -1
  20. data/lib/lazylead/schedule.rb +18 -17
  21. data/lib/lazylead/smtp.rb +1 -1
  22. data/lib/lazylead/system/jira.rb +55 -14
  23. data/lib/lazylead/system/synced.rb +2 -1
  24. data/lib/lazylead/task/accuracy/accuracy.rb +136 -0
  25. data/lib/lazylead/task/accuracy/affected_build.rb +39 -0
  26. data/lib/lazylead/task/accuracy/attachment.rb +44 -0
  27. data/lib/lazylead/task/accuracy/environment.rb +39 -0
  28. data/lib/lazylead/task/accuracy/logs.rb +40 -0
  29. data/lib/lazylead/task/accuracy/records.rb +45 -0
  30. data/lib/lazylead/task/accuracy/requirement.rb +49 -0
  31. data/lib/lazylead/task/accuracy/servers.rb +50 -0
  32. data/lib/lazylead/task/accuracy/stacktrace.rb +63 -0
  33. data/lib/lazylead/task/accuracy/testcase.rb +75 -0
  34. data/lib/lazylead/task/accuracy/wiki.rb +41 -0
  35. data/lib/lazylead/task/alert.rb +8 -6
  36. data/lib/lazylead/task/confluence_ref.rb +4 -3
  37. data/lib/lazylead/task/echo.rb +22 -0
  38. data/lib/lazylead/task/fix_version.rb +18 -7
  39. data/lib/lazylead/task/missing_comment.rb +7 -5
  40. data/lib/lazylead/task/propagate_down.rb +11 -3
  41. data/lib/lazylead/task/savepoint.rb +1 -1
  42. data/lib/lazylead/task/touch.rb +119 -0
  43. data/lib/lazylead/version.rb +1 -1
  44. data/lib/messages/accuracy.erb +118 -0
  45. data/lib/messages/svn_log.erb +117 -0
  46. data/lib/messages/svn_touch.erb +147 -0
  47. data/license.txt +1 -1
  48. data/readme.md +20 -19
  49. data/test/lazylead/cc_test.rb +2 -2
  50. data/test/lazylead/cli/app_test.rb +12 -12
  51. data/test/lazylead/exchange_test.rb +3 -3
  52. data/test/lazylead/model_test.rb +4 -4
  53. data/test/lazylead/opts_test.rb +70 -0
  54. data/test/lazylead/postman_test.rb +1 -1
  55. data/test/lazylead/smtp_test.rb +1 -1
  56. data/test/lazylead/system/jira_test.rb +65 -1
  57. data/test/lazylead/task/accuracy/accuracy_test.rb +73 -0
  58. data/test/lazylead/task/accuracy/affected_build_test.rb +42 -0
  59. data/test/lazylead/task/accuracy/attachment_test.rb +50 -0
  60. data/test/lazylead/task/accuracy/environment_test.rb +42 -0
  61. data/test/lazylead/task/accuracy/logs_test.rb +78 -0
  62. data/test/lazylead/task/accuracy/records_test.rb +60 -0
  63. data/test/lazylead/task/accuracy/servers_test.rb +66 -0
  64. data/test/lazylead/task/accuracy/stacktrace_test.rb +113 -0
  65. data/test/lazylead/task/accuracy/testcase_test.rb +205 -0
  66. data/test/lazylead/task/accuracy/wiki_test.rb +40 -0
  67. data/test/lazylead/task/assignee_alert_test.rb +2 -2
  68. data/test/lazylead/task/duedate_test.rb +36 -26
  69. data/test/lazylead/task/fix_version_test.rb +9 -6
  70. data/test/lazylead/task/missing_comment_test.rb +11 -9
  71. data/test/lazylead/task/propagate_down_test.rb +4 -2
  72. data/test/lazylead/task/touch_test.rb +88 -0
  73. data/test/test.rb +25 -0
  74. data/upgrades/sqlite/001-install-main-lazylead-tables.sql +1 -5
  75. data/upgrades/sqlite/999.testdata.sql +12 -16
  76. metadata +65 -8
  77. data/.travis.yml +0 -16
@@ -34,8 +34,8 @@ require_relative "../../../lib/lazylead/task/alert"
34
34
 
35
35
  module Lazylead
36
36
  class AssigneeAlertTest < Lazylead::Test
37
- test "issue #154: undefined method to_hash for nil object" do
38
- CLI::App.new(Log::NOTHING, NoSchedule.new).run(
37
+ test "issue #154 undefined method to_hash for nil object" do
38
+ CLI::App.new(Log.new, NoSchedule.new).run(
39
39
  home: ".",
40
40
  sqlite: "test/resources/#{no_ext(__FILE__)}.#{__method__}.db",
41
41
  vcs4sql: "upgrades/sqlite",
@@ -41,10 +41,12 @@ module Lazylead
41
41
  Task::AssigneeAlert.new.run(
42
42
  NoAuthJira.new("https://jira.spring.io"),
43
43
  Postman.new,
44
- "from" => "fake@email.com",
45
- "sql" => "filter=16743",
46
- "subject" => "[DD] PDTN!",
47
- "template" => "lib/messages/due_date_expired.erb"
44
+ Opts.new(
45
+ "from" => "fake@email.com",
46
+ "sql" => "filter=16743",
47
+ "subject" => "[DD] PDTN!",
48
+ "template" => "lib/messages/due_date_expired.erb"
49
+ )
48
50
  )
49
51
  assert_equal 2,
50
52
  Mail::TestMailer.deliveries
@@ -53,7 +55,7 @@ module Lazylead
53
55
  end
54
56
 
55
57
  test "configuration properties merged successfully" do
56
- CLI::App.new(Log::NOTHING, NoSchedule.new).run(
58
+ CLI::App.new(Log.new, NoSchedule.new).run(
57
59
  home: ".",
58
60
  sqlite: "test/resources/#{no_ext(__FILE__)}.#{__method__}.db",
59
61
  vcs4sql: "upgrades/sqlite",
@@ -75,10 +77,12 @@ module Lazylead
75
77
  Task::AssigneeAlert.new.run(
76
78
  NoAuthJira.new("https://jira.spring.io"),
77
79
  Postman.new,
78
- "from" => "fake@email.com",
79
- "sql" => "key in ('STS-3599')",
80
- "subject" => "[DD] HMCHT!",
81
- "template" => "lib/messages/due_date_expired.erb"
80
+ Opts.new(
81
+ "from" => "fake@email.com",
82
+ "sql" => "key in ('STS-3599')",
83
+ "subject" => "[DD] HMCHT!",
84
+ "template" => "lib/messages/due_date_expired.erb"
85
+ )
82
86
  )
83
87
  assert_email "[DD] HMCHT!",
84
88
  %w[STS-3599 2013-11-08 Major Miles\ Parker Use JavaFX WebView]
@@ -89,12 +93,14 @@ module Lazylead
89
93
  Task::Alert.new.run(
90
94
  NoAuthJira.new("https://jira.spring.io"),
91
95
  Postman.new,
92
- "from" => "fake@email.com",
93
- "sql" => "key in ('STS-3599')",
94
- "subject" => "ALRT: Frozen",
95
- "template" => "lib/messages/due_date_expired.erb",
96
- "to" => "big.boss@example.com",
97
- "addressee" => "Boss"
96
+ Opts.new(
97
+ "from" => "fake@email.com",
98
+ "sql" => "key in ('STS-3599')",
99
+ "subject" => "ALRT: Frozen",
100
+ "template" => "lib/messages/due_date_expired.erb",
101
+ "to" => "big.boss@example.com",
102
+ "addressee" => "Boss"
103
+ )
98
104
  )
99
105
  assert_email "ALRT: Frozen",
100
106
  %w[Hi Boss STS-3599 2013-11-08 Major Miles\ Parker Use JavaFX WebView]
@@ -105,13 +111,15 @@ module Lazylead
105
111
  Task::Alert.new.run(
106
112
  NoAuthJira.new("https://jira.spring.io"),
107
113
  Postman.new,
108
- "from" => "fake@email.com",
109
- "sql" => "key in ('STS-3599')",
110
- "subject" => "CC: Watching",
111
- "template" => "lib/messages/due_date_expired.erb",
112
- "to" => "big.boss@example.com",
113
- "addressee" => "Boss",
114
- "cc" => "another.boss@example.com,mom@home.com"
114
+ Opts.new(
115
+ "from" => "fake@email.com",
116
+ "sql" => "key in ('STS-3599')",
117
+ "subject" => "CC: Watching",
118
+ "template" => "lib/messages/due_date_expired.erb",
119
+ "to" => "big.boss@example.com",
120
+ "addressee" => "Boss",
121
+ "cc" => "another.boss@example.com,mom@home.com"
122
+ )
115
123
  )
116
124
  assert_equal %w[another.boss@example.com mom@home.com],
117
125
  Mail::TestMailer.deliveries
@@ -124,10 +132,12 @@ module Lazylead
124
132
  Task::ReporterAlert.new.run(
125
133
  NoAuthJira.new("https://jira.spring.io"),
126
134
  Postman.new,
127
- "from" => "fake@email.com",
128
- "sql" => "filter=16743",
129
- "subject" => "DD Expired!",
130
- "template" => "lib/messages/due_date_expired.erb"
135
+ Opts.new(
136
+ "from" => "fake@email.com",
137
+ "sql" => "filter=16743",
138
+ "subject" => "DD Expired!",
139
+ "template" => "lib/messages/due_date_expired.erb"
140
+ )
131
141
  )
132
142
  assert_equal 2,
133
143
  Mail::TestMailer.deliveries
@@ -26,6 +26,7 @@ require "mail"
26
26
 
27
27
  require_relative "../../test"
28
28
  require_relative "../../../lib/lazylead/smtp"
29
+ require_relative "../../../lib/lazylead/opts"
29
30
  require_relative "../../../lib/lazylead/postman"
30
31
  require_relative "../../../lib/lazylead/task/fix_version"
31
32
 
@@ -36,12 +37,14 @@ module Lazylead
36
37
  Task::FixVersion.new.run(
37
38
  NoAuthJira.new("https://jira.spring.io"),
38
39
  Postman.new,
39
- "to" => "lead@company.com",
40
- "from" => "ll@company.com",
41
- "jql" => "key in ('DATAJDBC-480') and fixVersion is not empty",
42
- "allowed" => "tom,mike,bob",
43
- "subject" => "FixVersion: How dare you?",
44
- "template" => "lib/messages/illegal_fixversion_change.erb"
40
+ Opts.new(
41
+ "to" => "lead@company.com",
42
+ "from" => "ll@company.com",
43
+ "jql" => "key in ('DATAJDBC-480') and fixVersion is not empty",
44
+ "allowed" => "tom,mike,bob",
45
+ "subject" => "FixVersion: How dare you?",
46
+ "template" => "lib/messages/illegal_fixversion_change.erb"
47
+ )
45
48
  )
46
49
  assert_email "FixVersion: How dare you?",
47
50
  %w[DATAJDBC-480 01-Apr-2020 Minor Mark\ Paluch tom,mike,bob EntityInstantiators]
@@ -37,15 +37,17 @@ module Lazylead
37
37
  Task::MissingComment.new.run(
38
38
  NoAuthJira.new("https://jira.spring.io"),
39
39
  Postman.new,
40
- "to" => "lead@company.com",
41
- "addressee" => "Tom",
42
- "from" => "ll@company.com",
43
- "jql" => "key=DATAJDBC-523",
44
- "text" => "ftp.com/demo.avi",
45
- "details" => "reference to <code>ftp.com/demo.avi</code>",
46
- "subject" => "Expected ftp link is missing",
47
- "template" => "lib/messages/missing_comment.erb",
48
- "template_details" => "reference to <a href='file://ftp/path'>ftp</a>"
40
+ Opts.new(
41
+ "to" => "lead@company.com",
42
+ "addressee" => "Tom",
43
+ "from" => "ll@company.com",
44
+ "jql" => "key=DATAJDBC-523",
45
+ "text" => "ftp.com/demo.avi",
46
+ "details" => "reference to <code>ftp.com/demo.avi</code>",
47
+ "subject" => "Expected ftp link is missing",
48
+ "template" => "lib/messages/missing_comment.erb",
49
+ "template_details" => "reference to <a href='file://ftp/path'>ftp</a>"
50
+ )
49
51
  )
50
52
  assert_email "Expected ftp link is missing",
51
53
  %w[DATAJDBC-523 Major Mark\ Paluch https://github.com/spring-projects/spring-data-jdbc/commit/aadbb667ed1d61139d5ac51a06eb3dd1b39316db#diff-510a5041bb8a0575e97fedf105606b83R130]
@@ -66,8 +66,10 @@ module Lazylead
66
66
  Task::PropagateDown.new.run(
67
67
  Fake.new([parent, child]),
68
68
  [],
69
- "jql" => "type=Defect and updated>-1h and has subtasks without fields",
70
- "fields" => "customfield_101,customfield_102"
69
+ Opts.new(
70
+ "jql" => "type=Defect and updated>-1h and subtasks without fields",
71
+ "propagate" => "customfield_101,customfield_102"
72
+ )
71
73
  )
72
74
  assert_entries(
73
75
  {
@@ -0,0 +1,88 @@
1
+ # frozen_string_literal: true
2
+
3
+ # The MIT License
4
+ #
5
+ # Copyright (c) 2019-2020 Yurii Dubinka
6
+ #
7
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ # of this software and associated documentation files (the "Software"),
9
+ # to deal in the Software without restriction, including without limitation
10
+ # the rights to use, copy, modify, merge, publish, distribute, sublicense,
11
+ # and/or sell copies of the Software, and to permit persons to whom
12
+ # the Software is furnished to do so, subject to the following conditions:
13
+ #
14
+ # The above copyright notice and this permission notice shall be included
15
+ # in all copies or substantial portions of the Software.
16
+ #
17
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
20
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22
+ # ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
23
+ # OR OTHER DEALINGS IN THE SOFTWARE.
24
+
25
+ require "mail"
26
+ require_relative "../../test"
27
+ require_relative "../../../lib/lazylead/smtp"
28
+ require_relative "../../../lib/lazylead/opts"
29
+ require_relative "../../../lib/lazylead/postman"
30
+ require_relative "../../../lib/lazylead/task/touch"
31
+
32
+ module Lazylead
33
+ class SvnTouchTest < Lazylead::Test
34
+ test "important files changed in svn repo" do
35
+ skip "No svn credentials provided" unless env? "svn_touch_user",
36
+ "svn_touch_password"
37
+ skip "No internet connection to riouxsvn.com" unless ping? "riouxsvn.com"
38
+ Lazylead::Smtp.new.enable
39
+ Task::SvnTouch.new.run(
40
+ [],
41
+ Postman.new,
42
+ Opts.new(
43
+ "svn_url" => "https://svn.riouxsvn.com/touch4ll",
44
+ "svn_user" => ENV["svn_touch_user"],
45
+ "svn_password" => ENV["svn_touch_password"],
46
+ "commit_url" => "https://view.commit.com?rev=",
47
+ "user" => "https://user.com?id=",
48
+ "to" => "lead@fake.com",
49
+ "from" => "ll@fake.com",
50
+ "now" => "2020-08-17T00:00:00+01:00",
51
+ "period" => "864000",
52
+ "files" => "189.md,absent.txt",
53
+ "subject" => "[SVN] Important files have been changed!",
54
+ "template" => "lib/messages/svn_touch.erb"
55
+ )
56
+ )
57
+ assert_email "[SVN] Important files have been changed!",
58
+ %w[3 dgroup /189.md Add\ description\ for\ 189\ issue]
59
+ end
60
+ end
61
+
62
+ class SvnLogTest < Lazylead::Test
63
+ test "changes since revision" do
64
+ skip "No svn credentials provided" unless env? "svn_log_user",
65
+ "svn_log_password"
66
+ skip "No internet connection to riouxsvn.com" unless ping? "riouxsvn.com"
67
+ Lazylead::Smtp.new.enable
68
+ Task::SvnLog.new.run(
69
+ [],
70
+ Postman.new,
71
+ Opts.new(
72
+ "from" => "svnlog@test.com",
73
+ "svn_url" => "https://svn.riouxsvn.com/touch4ll",
74
+ "svn_user" => ENV["svn_log_user"],
75
+ "svn_password" => ENV["svn_log_password"],
76
+ "commit_url" => "https://view.commit.com?rev=",
77
+ "user" => "https://user.com?id=",
78
+ "to" => "lead@fake.com",
79
+ "since_rev" => "1",
80
+ "subject" => "[SVN] Changed since rev1",
81
+ "template" => "lib/messages/svn_log.erb"
82
+ )
83
+ )
84
+ assert_email_line "[SVN] Changed since rev1",
85
+ %w[r2 by dgroup at 2020-08-16]
86
+ end
87
+ end
88
+ end
@@ -110,5 +110,30 @@ module Lazylead
110
110
  .first
111
111
  .body.parts.first.body.raw_source
112
112
  end
113
+
114
+ # Assert that email sent using 'mail' gem in test mode
115
+ # has expected subject and line with expected words
116
+ # @todo #/DEV Gem 'mail' sends email as a single line, find a way how to add
117
+ # symbol '\n' to each line for email during unit testing.
118
+ def assert_email_line(subject, words)
119
+ words = [words] unless words.respond_to? :each
120
+ mail = Mail::TestMailer.deliveries
121
+ .filter { |m| m.subject.eql? subject }
122
+ .first
123
+ .body.parts.first.body.raw_source
124
+ .split("\n")
125
+ .reject(&:blank?)
126
+ assert mail.any? { |line| words.all? { |w| line.include? w } },
127
+ "Words '#{words.join(',')}' wasn't found in '#{mail.join('\n')}'"
128
+ end
129
+
130
+ # Ping remote host
131
+ # https://github.com/eitoball/net-ping
132
+ # https://stackoverflow.com/a/35508446/6916890
133
+ # https://rubygems.org/gems/net-ping/versions/2.0.8
134
+ def ping?(host)
135
+ require "net/ping"
136
+ Net::Ping::External.new(host).ping?
137
+ end
113
138
  end
114
139
  end
@@ -46,11 +46,7 @@ create table if not exists tasks
46
46
  (
47
47
  id integer primary key,
48
48
  name text not null,
49
- cron text not null,
50
- -- @todo #/DEV task.cron - add support for non-cron based schedule like at, once, every.
51
- -- More details:
52
- -- https://github.com/jmettraux/rufus-scheduler
53
- -- https://stackoverflow.com/questions/46691666/using-constantize-to-invoke-both-a-class-and-method-from-separate-strings
49
+ schedule text not null,
54
50
  system integer not null,
55
51
  action text not null,
56
52
  team_id integer not null,
@@ -22,23 +22,19 @@
22
22
  * OR OTHER DEALINGS IN THE SOFTWARE.
23
23
  */
24
24
  insert into systems(id, properties)
25
- values (1,
26
- '{"type":"Lazylead::Jira", "username":"", "password":"", "site":"https://jira.spring.io", "context_path":""}'),
27
- (2,
28
- '{"type":"Lazylead::Jira", "username":"${jsi_usr}", "password":"${jsi_psw}", "site":"https://jira.spring.io", "context_path":""}');
25
+ values (1,'{"type":"Lazylead::Jira", "username":"", "password":"", "site":"https://jira.spring.io", "context_path":""}'),
26
+ (2,'{"type":"Lazylead::Jira", "username":"${jsi_usr}", "password":"${jsi_psw}", "site":"https://jira.spring.io", "context_path":""}');
29
27
  insert into teams(id, name, properties)
30
28
  values (1, 'BA squad', '{"from":"basquad@fake.com", "usr":"${usr}"}'),
31
29
  (154, 'Team for issue #154', '{"cc":"lead@fake.com"}');
32
- insert into tasks(name, cron, enabled, id, system, team_id, action, properties)
33
- values ('echo', '* * * * *', 'false', 1, 1, 1, 'Lazylead::Task::Echo', '{}'),
34
- ('expired due date', '* * * * *', 'false', 2, 1, 1,
35
- 'Lazylead::Task::Notification',
36
- '{"sql":"filter=100500","subject":"[DD] PDTN!","template":"lib/messages/due_date_expired.erb"}'),
37
- ('task with cc', '* * * * *', 'false', 3, 1, 1, 'Lazylead::Task::Echo',
38
- '{"cc":"leelakenny@mail.com,maciecrane@mail.com"}'),
39
- ('task', '* * * * *', 'false', 4, 2, 1, 'Lazylead::Task::Echo', '{}'),
30
+ insert into tasks(name, schedule, enabled, id, system, team_id, action, properties)
31
+ values ('echo', 'cron:* * * * *', 'false', 1, 1, 1, 'Lazylead::Task::Echo', '{}'),
32
+ ('expired due date', 'cron:* * * * *', 'false', 2, 1, 1,'Lazylead::Task::Notification','{"sql":"filter=100500","subject":"[DD] PDTN!","template":"lib/messages/due_date_expired.erb"}'),
33
+ ('task with cc', 'cron:* * * * *', 'false', 3, 1, 1, 'Lazylead::Task::Echo','{"cc":"leelakenny@mail.com,maciecrane@mail.com"}'),
34
+ ('task', 'cron:* * * * *', 'false', 4, 2, 1, 'Lazylead::Task::Echo', '{}'),
40
35
  ('pman', '', '', 5, 2, 1, '', '{"postman":"Lazylead::Postman"}'),
41
- ('issue 154', '* * * * *', 'false', 154, 1, 154, 'Lazylead::Task::AssigneeAlert', '{}'),
42
- ('task with complex cc', '* * * * *', 'false', 165, 1, 1, 'Lazylead::Task::Echo',
43
- '{"cc":{"type":"Lazylead::PredefinedCC","opts": {"jvm":"tom@fake.com","jdbc":"mike@fake.com"}}}'),
44
- ('issue 171', '* * * * *', 'false', 171, 1, 1, 'Lazylead::Task::Echo', '{"envkey":"${key171}"}');
36
+ ('issue 154', '', 'false', 154, 1, 154, 'Lazylead::Task::AssigneeAlert', '{}'),
37
+ ('task with complex cc', '', 'false', 165, 1, 1, 'Lazylead::Task::Echo','{"cc":{"type":"Lazylead::PredefinedCC","opts": {"jvm":"tom@fake.com","jdbc":"mike@fake.com"}}}'),
38
+ ('issue 171', '', 'false', 171, 1, 1, 'Lazylead::Task::Echo', '{"envkey":"${key171}"}'),
39
+ ('issue 195', '', 'false', 195, 1, 1, 'Lazylead::Task::Accuracy', '{"key":"value"}'),
40
+ ('issue 130', 'in:0.001s', 'true', 130, 1, 1, 'Lazylead::Task::EchoIO', '{}');
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lazylead
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yurii Dubinka
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-19 00:00:00.000000000 Z
11
+ date: 2020-10-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - '='
88
88
  - !ruby/object:Gem::Version
89
- version: 2.2.0
89
+ version: 2.3.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - '='
95
95
  - !ruby/object:Gem::Version
96
- version: 2.2.0
96
+ version: 2.3.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: logging
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -296,14 +296,14 @@ dependencies:
296
296
  requirements:
297
297
  - - '='
298
298
  - !ruby/object:Gem::Version
299
- version: 0.1.14
299
+ version: 0.2.3
300
300
  type: :development
301
301
  prerelease: false
302
302
  version_requirements: !ruby/object:Gem::Requirement
303
303
  requirements:
304
304
  - - '='
305
305
  - !ruby/object:Gem::Version
306
- version: 0.1.14
306
+ version: 0.2.3
307
307
  - !ruby/object:Gem::Dependency
308
308
  name: guard
309
309
  requirement: !ruby/object:Gem::Requirement
@@ -388,6 +388,20 @@ dependencies:
388
388
  - - '='
389
389
  - !ruby/object:Gem::Version
390
390
  version: 1.3.6
391
+ - !ruby/object:Gem::Dependency
392
+ name: net-ping
393
+ requirement: !ruby/object:Gem::Requirement
394
+ requirements:
395
+ - - '='
396
+ - !ruby/object:Gem::Version
397
+ version: 2.0.8
398
+ type: :development
399
+ prerelease: false
400
+ version_requirements: !ruby/object:Gem::Requirement
401
+ requirements:
402
+ - - '='
403
+ - !ruby/object:Gem::Version
404
+ version: 2.0.8
391
405
  - !ruby/object:Gem::Dependency
392
406
  name: rake
393
407
  requirement: !ruby/object:Gem::Requirement
@@ -541,6 +555,9 @@ files:
541
555
  - ".docker/docker-compose.yml"
542
556
  - ".docker/readme.md"
543
557
  - ".docker/vcs.dockerfile"
558
+ - ".docs/accuracy.md"
559
+ - ".docs/accuracy_email.jpg"
560
+ - ".docs/accuracy_jira_comment.jpg"
544
561
  - ".docs/duedate_expired.md"
545
562
  - ".docs/propagate_down.md"
546
563
  - ".gitattributes"
@@ -550,6 +567,7 @@ files:
550
567
  - ".github/ISSUE_TEMPLATE/bug_report.md"
551
568
  - ".github/ISSUE_TEMPLATE/feature_request.md"
552
569
  - ".github/PULL_REQUEST_TEMPLATE.md"
570
+ - ".github/dependabot.yml"
553
571
  - ".github/tasks.yml"
554
572
  - ".github/trello.md"
555
573
  - ".gitignore"
@@ -558,7 +576,6 @@ files:
558
576
  - ".ruby-version"
559
577
  - ".rultor.yml"
560
578
  - ".simplecov"
561
- - ".travis.yml"
562
579
  - CNAME
563
580
  - Gemfile
564
581
  - Guardfile
@@ -578,6 +595,7 @@ files:
578
595
  - lib/lazylead/home.rb
579
596
  - lib/lazylead/log.rb
580
597
  - lib/lazylead/model.rb
598
+ - lib/lazylead/opts.rb
581
599
  - lib/lazylead/postman.rb
582
600
  - lib/lazylead/salt.rb
583
601
  - lib/lazylead/schedule.rb
@@ -586,6 +604,17 @@ files:
586
604
  - lib/lazylead/system/fake.rb
587
605
  - lib/lazylead/system/jira.rb
588
606
  - lib/lazylead/system/synced.rb
607
+ - lib/lazylead/task/accuracy/accuracy.rb
608
+ - lib/lazylead/task/accuracy/affected_build.rb
609
+ - lib/lazylead/task/accuracy/attachment.rb
610
+ - lib/lazylead/task/accuracy/environment.rb
611
+ - lib/lazylead/task/accuracy/logs.rb
612
+ - lib/lazylead/task/accuracy/records.rb
613
+ - lib/lazylead/task/accuracy/requirement.rb
614
+ - lib/lazylead/task/accuracy/servers.rb
615
+ - lib/lazylead/task/accuracy/stacktrace.rb
616
+ - lib/lazylead/task/accuracy/testcase.rb
617
+ - lib/lazylead/task/accuracy/wiki.rb
589
618
  - lib/lazylead/task/alert.rb
590
619
  - lib/lazylead/task/confluence_ref.rb
591
620
  - lib/lazylead/task/echo.rb
@@ -593,11 +622,15 @@ files:
593
622
  - lib/lazylead/task/missing_comment.rb
594
623
  - lib/lazylead/task/propagate_down.rb
595
624
  - lib/lazylead/task/savepoint.rb
625
+ - lib/lazylead/task/touch.rb
596
626
  - lib/lazylead/version.rb
627
+ - lib/messages/accuracy.erb
597
628
  - lib/messages/due_date_expired.erb
598
629
  - lib/messages/illegal_fixversion_change.erb
599
630
  - lib/messages/missing_comment.erb
600
631
  - lib/messages/savepoint.erb
632
+ - lib/messages/svn_log.erb
633
+ - lib/messages/svn_touch.erb
601
634
  - license.txt
602
635
  - readme.md
603
636
  - test/lazylead/allocated_test.rb
@@ -606,11 +639,22 @@ files:
606
639
  - test/lazylead/confluence_test.rb
607
640
  - test/lazylead/exchange_test.rb
608
641
  - test/lazylead/model_test.rb
642
+ - test/lazylead/opts_test.rb
609
643
  - test/lazylead/postman_test.rb
610
644
  - test/lazylead/salt_test.rb
611
645
  - test/lazylead/smoke_test.rb
612
646
  - test/lazylead/smtp_test.rb
613
647
  - test/lazylead/system/jira_test.rb
648
+ - test/lazylead/task/accuracy/accuracy_test.rb
649
+ - test/lazylead/task/accuracy/affected_build_test.rb
650
+ - test/lazylead/task/accuracy/attachment_test.rb
651
+ - test/lazylead/task/accuracy/environment_test.rb
652
+ - test/lazylead/task/accuracy/logs_test.rb
653
+ - test/lazylead/task/accuracy/records_test.rb
654
+ - test/lazylead/task/accuracy/servers_test.rb
655
+ - test/lazylead/task/accuracy/stacktrace_test.rb
656
+ - test/lazylead/task/accuracy/testcase_test.rb
657
+ - test/lazylead/task/accuracy/wiki_test.rb
614
658
  - test/lazylead/task/assignee_alert_test.rb
615
659
  - test/lazylead/task/confluence_ref_test.rb
616
660
  - test/lazylead/task/duedate_test.rb
@@ -619,6 +663,7 @@ files:
619
663
  - test/lazylead/task/missing_comment_test.rb
620
664
  - test/lazylead/task/propagate_down_test.rb
621
665
  - test/lazylead/task/savepoint_test.rb
666
+ - test/lazylead/task/touch_test.rb
622
667
  - test/lazylead/version_test.rb
623
668
  - test/sqlite_test.rb
624
669
  - test/test.rb
@@ -629,7 +674,7 @@ licenses:
629
674
  - MIT
630
675
  metadata: {}
631
676
  post_install_message: |-
632
- Thanks for installing Lazylead v0.3.1!
677
+ Thanks for installing Lazylead v0.5.0!
633
678
  Read our blog posts: https://lazylead.org
634
679
  Stay in touch with the community in Telegram: https://t.me/lazylead
635
680
  Follow us on Twitter: https://twitter.com/lazylead
@@ -660,11 +705,22 @@ test_files:
660
705
  - test/lazylead/confluence_test.rb
661
706
  - test/lazylead/exchange_test.rb
662
707
  - test/lazylead/model_test.rb
708
+ - test/lazylead/opts_test.rb
663
709
  - test/lazylead/postman_test.rb
664
710
  - test/lazylead/salt_test.rb
665
711
  - test/lazylead/smoke_test.rb
666
712
  - test/lazylead/smtp_test.rb
667
713
  - test/lazylead/system/jira_test.rb
714
+ - test/lazylead/task/accuracy/accuracy_test.rb
715
+ - test/lazylead/task/accuracy/affected_build_test.rb
716
+ - test/lazylead/task/accuracy/attachment_test.rb
717
+ - test/lazylead/task/accuracy/environment_test.rb
718
+ - test/lazylead/task/accuracy/logs_test.rb
719
+ - test/lazylead/task/accuracy/records_test.rb
720
+ - test/lazylead/task/accuracy/servers_test.rb
721
+ - test/lazylead/task/accuracy/stacktrace_test.rb
722
+ - test/lazylead/task/accuracy/testcase_test.rb
723
+ - test/lazylead/task/accuracy/wiki_test.rb
668
724
  - test/lazylead/task/assignee_alert_test.rb
669
725
  - test/lazylead/task/confluence_ref_test.rb
670
726
  - test/lazylead/task/duedate_test.rb
@@ -673,6 +729,7 @@ test_files:
673
729
  - test/lazylead/task/missing_comment_test.rb
674
730
  - test/lazylead/task/propagate_down_test.rb
675
731
  - test/lazylead/task/savepoint_test.rb
732
+ - test/lazylead/task/touch_test.rb
676
733
  - test/lazylead/version_test.rb
677
734
  - test/sqlite_test.rb
678
735
  - test/test.rb