redmine_avm 0.3.15 → 0.3.16

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 (29) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/issue_status_assigns_controller.rb +1 -1
  3. data/app/models/issue_status_assign.rb +2 -2
  4. data/config/initializers/events_manager.rb +11 -11
  5. data/config/initializers/redmine_plugins_helper.rb +5 -5
  6. data/init.rb +4 -4
  7. data/lib/{avm → redmine_avm}/issue/assign.rb +5 -5
  8. data/lib/{avm → redmine_avm}/issue/dependencies_section_check.rb +9 -9
  9. data/lib/{avm → redmine_avm}/issue/motivation_check.rb +5 -5
  10. data/lib/{avm → redmine_avm}/issue/unblock.rb +8 -7
  11. data/lib/{avm → redmine_avm}/issue/undefine.rb +7 -6
  12. data/lib/{avm → redmine_avm}/listeners/issue_auto_assign.rb +4 -3
  13. data/lib/{avm → redmine_avm}/listeners/issue_auto_unblock/issue_delete.rb +2 -2
  14. data/lib/{avm → redmine_avm}/listeners/issue_auto_unblock/issue_relation_delete.rb +1 -1
  15. data/lib/{avm → redmine_avm}/listeners/issue_auto_unblock/issue_update.rb +4 -3
  16. data/lib/{avm → redmine_avm}/listeners/issue_auto_unblock.rb +4 -4
  17. data/lib/{avm → redmine_avm}/listeners/issue_auto_undefine/issue_create.rb +2 -2
  18. data/lib/{avm → redmine_avm}/listeners/issue_auto_undefine/issue_relation_create.rb +2 -2
  19. data/lib/{avm → redmine_avm}/listeners/issue_auto_undefine/issue_update.rb +5 -4
  20. data/lib/{avm → redmine_avm}/listeners/issue_auto_undefine.rb +4 -4
  21. data/lib/{avm → redmine_avm}/listeners/issue_dependencies_section_check.rb +6 -5
  22. data/lib/{avm → redmine_avm}/listeners/issue_motivation_check.rb +6 -5
  23. data/lib/redmine_avm/patches/issue_patch.rb +7 -7
  24. data/lib/redmine_avm/patches/test_case_patch.rb +2 -2
  25. data/lib/{avm → redmine_avm}/settings.rb +5 -5
  26. data/lib/redmine_avm/test_config.rb +1 -1
  27. data/lib/redmine_avm/version.rb +1 -1
  28. data/lib/tasks/issue.rake +15 -15
  29. metadata +19 -19
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 60c971f42395aa172234b9640d5be8122185ce56554862eaa05f64cc9f74bd75
4
- data.tar.gz: 5355187064fb25dedf5d9af593d76a2dd512d906f9507e910d0611bdd4a3f0b6
3
+ metadata.gz: 81fee7e60ac7887595ac2e6d8932828281c730dcbaae449f4e92f3f1f827b8bb
4
+ data.tar.gz: 6859ce71abe61b1862925452b58240e76b387c98e152276499d9becbee98fc5a
5
5
  SHA512:
6
- metadata.gz: 1e6fcb6baa528ba7880983b57f11647ee3d4cec027db930f11ef09fa7e0e52c4e3e72d923d1bf4a53a34dcff6e6f22b416bb9a74954501f869e26d58af3d2ba4
7
- data.tar.gz: e120129dac753f52ec02fa6a2b5247fd7d3b93ed9762e322c8fcf474fdc177711a68981b07b0a42e4bdd788d7f6974be801fa783fad8efaeafac1f83689ee19e
6
+ metadata.gz: d9a8f9431d6df677ef68b3977eed55e1a2bcfbb4c2a3f141dee097fe85255bd8047e27c6f10e47cb8c24b3f30101abe267f0eb7e0c909c17348ffb5fbd56302d
7
+ data.tar.gz: 72c3cf671a6c9ec69bdf6dab1ac7f609e3367a334bc9b57d7560df723730ba05f40b1cdb7be46317e7aed9a2bb1fbe4320612d4213c6738454180d1eee15e572
@@ -18,6 +18,6 @@ class IssueStatusAssignsController < ApplicationController
18
18
 
19
19
  def issue_field_options
20
20
  CustomField.where(type: 'IssueCustomField', field_format: 'user')
21
- .map { |cf| [cf.id, cf.to_s] }
21
+ .map { |cf| [cf.id, cf.to_s] }
22
22
  end
23
23
  end
@@ -4,6 +4,6 @@ class IssueStatusAssign < ActiveRecord::Base
4
4
  belongs_to :issue_status, dependent: :destroy
5
5
  belongs_to :issue_field, class_name: 'CustomField', dependent: :destroy
6
6
 
7
- validates :issue_status, presence: true, uniqueness: true
8
- validates :issue_field, presence: true
7
+ validates :issue_status, presence: true, uniqueness: true # rubocop:disable Rails/RedundantPresenceValidationOnBelongsTo, Rails/UniqueValidationWithoutIndex
8
+ validates :issue_field, presence: true # rubocop:disable Rails/RedundantPresenceValidationOnBelongsTo
9
9
  end
@@ -1,17 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- RedmineEventsManager.add_listener(Issue, :create, 'Avm::Listeners::IssueAutoUndefine')
4
- RedmineEventsManager.add_listener(Issue, :update, 'Avm::Listeners::IssueAutoUndefine')
5
- RedmineEventsManager.add_listener(IssueRelation, :create, 'Avm::Listeners::IssueAutoUndefine')
6
- RedmineEventsManager.add_listener(IssueRelation, :delete, 'Avm::Listeners::IssueAutoUnblock')
7
- RedmineEventsManager.add_listener(Issue, :delete, 'Avm::Listeners::IssueAutoUnblock')
8
- RedmineEventsManager.add_listener(Issue, :update, 'Avm::Listeners::IssueAutoUnblock')
9
- RedmineEventsManager.add_listener(Issue, :create, 'Avm::Listeners::IssueAutoAssign')
10
- RedmineEventsManager.add_listener(Issue, :update, 'Avm::Listeners::IssueAutoAssign')
3
+ RedmineEventsManager.add_listener(Issue, :create, 'RedmineAvm::Listeners::IssueAutoUndefine')
4
+ RedmineEventsManager.add_listener(Issue, :update, 'RedmineAvm::Listeners::IssueAutoUndefine')
5
+ RedmineEventsManager.add_listener(IssueRelation, :create, 'RedmineAvm::Listeners::IssueAutoUndefine')
6
+ RedmineEventsManager.add_listener(IssueRelation, :delete, 'RedmineAvm::Listeners::IssueAutoUnblock')
7
+ RedmineEventsManager.add_listener(Issue, :delete, 'RedmineAvm::Listeners::IssueAutoUnblock')
8
+ RedmineEventsManager.add_listener(Issue, :update, 'RedmineAvm::Listeners::IssueAutoUnblock')
9
+ RedmineEventsManager.add_listener(Issue, :create, 'RedmineAvm::Listeners::IssueAutoAssign')
10
+ RedmineEventsManager.add_listener(Issue, :update, 'RedmineAvm::Listeners::IssueAutoAssign')
11
11
  RedmineEventsManager.add_listener(Issue, :update,
12
- 'Avm::Listeners::IssueDependenciesSectionCheck')
12
+ 'RedmineAvm::Listeners::IssueDependenciesSectionCheck')
13
13
  RedmineEventsManager.add_listener(IssueRelation, :create,
14
- 'Avm::Listeners::IssueDependenciesSectionCheck')
14
+ 'RedmineAvm::Listeners::IssueDependenciesSectionCheck')
15
15
  [[Issue, :create], [Issue, :update], [IssueRelation, :create]].each do |v|
16
- RedmineEventsManager.add_listener(v.first, v.last, 'Avm::Listeners::IssueMotivationCheck')
16
+ RedmineEventsManager.add_listener(v.first, v.last, 'RedmineAvm::Listeners::IssueMotivationCheck')
17
17
  end
@@ -3,17 +3,17 @@
3
3
  default_value = {
4
4
  dependencies_section_title: 'Dependencies',
5
5
  no_dependencies_section_message: "Dependencies section not found.\n" \
6
- "Customize this message in plugin AVM's configuration.",
6
+ "Customize this message in plugin AVM's configuration.",
7
7
  dependencies_section_missing_dependencies_message:
8
- "Missing dependencies found dependencies section: %{ids}.\n" + # rubocop:disable Style/FormatStringToken
8
+ "Missing dependencies found dependencies section: %{ids}.\n" + # rubocop:disable Style/FormatStringToken, Style/StringConcatenation
9
9
  "Customize this message in plugin AVM's configuration.",
10
10
  motivation_section_title: 'Motivation',
11
11
  unmotivated_message: 'This issue is not motivated.'
12
12
  }
13
13
 
14
- if ::RedminePluginsHelper::Available.model?(::User)
15
- default_admin = ::User.where(id: 1, admin: true).first
14
+ if RedminePluginsHelper::Available.model?(User)
15
+ default_admin = User.where(id: 1, admin: true).first
16
16
  default_value[:admin_user_id] = default_admin.id if default_admin
17
17
  end
18
18
 
19
- ::RedminePluginsHelper::Settings.default(:redmine_avm, default_value)
19
+ RedminePluginsHelper::Settings.default(:redmine_avm, default_value)
data/init.rb CHANGED
@@ -4,10 +4,10 @@ require 'redmine'
4
4
 
5
5
  Redmine::Plugin.register :redmine_avm do
6
6
  name 'Redmine\'s AVM plugin'
7
- author ::RedmineNonprojectModules::AUTHOR
8
- description ::RedmineAvm::SUMMARY
9
- version ::RedmineNonprojectModules::VERSION
10
- url ::RedmineNonprojectModules::HOMEPAGE
7
+ author RedmineNonprojectModules::AUTHOR
8
+ description RedmineAvm::SUMMARY
9
+ version RedmineNonprojectModules::VERSION
10
+ url RedmineNonprojectModules::HOMEPAGE
11
11
 
12
12
  settings(partial: 'settings/avm')
13
13
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Issue
5
5
  class Assign
6
6
  attr_reader :issue
@@ -34,12 +34,12 @@ module Avm
34
34
 
35
35
  def assign
36
36
  user = issue_status_user
37
- Rails.logger.debug("Assigning #{user} to #{issue}")
37
+ Rails.logger.debug { "Assigning #{user} to #{issue}" }
38
38
  user_label = user ? user.to_s : 'NENHUM'
39
39
  @issue.init_journal(
40
- Avm::Settings.admin_user,
41
- I18n.translate(:issue_assign_message, user: user_label, issue_status: issue.status,
42
- issue_field: issue_status_assign.issue_field.name)
40
+ RedmineAvm::Settings.admin_user,
41
+ I18n.t(:issue_assign_message, user: user_label, issue_status: issue.status,
42
+ issue_field: issue_status_assign.issue_field.name)
43
43
  )
44
44
  @issue.assigned_to = user
45
45
  @issue.save!
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Issue
5
5
  class DependenciesSectionCheck
6
6
  def initialize(issue)
@@ -12,13 +12,13 @@ module Avm
12
12
  return if @issue.dependencies.empty?
13
13
 
14
14
  unless @issue.dependencies_section
15
- Rails.logger.info("\##{@issue.id}: no section found")
15
+ Rails.logger.info("##{@issue.id}: no section found")
16
16
  undefine_no_dependencies_secion
17
17
  return
18
18
  end
19
19
  return if all_dependencies_in_dependencies_section?
20
20
 
21
- Rails.logger.info("\##{@issue.id}: missing dependencies in dependency section")
21
+ Rails.logger.info("##{@issue.id}: missing dependencies in dependency section")
22
22
  undefine_no_all_dependencies
23
23
  end
24
24
 
@@ -31,20 +31,20 @@ module Avm
31
31
 
32
32
  def undefine_no_dependencies_secion
33
33
  @issue.init_journal(
34
- Avm::Settings.admin_user,
35
- Avm::Settings.no_dependencies_section_message
34
+ RedmineAvm::Settings.admin_user,
35
+ RedmineAvm::Settings.no_dependencies_section_message
36
36
  )
37
- @issue.status = Avm::Settings.issue_status_undefined
37
+ @issue.status = RedmineAvm::Settings.issue_status_undefined
38
38
  @issue.save!
39
39
  end
40
40
 
41
41
  def undefine_no_all_dependencies
42
42
  @issue.init_journal(
43
- Avm::Settings.admin_user,
44
- format(Avm::Settings.dependencies_section_missing_dependencies_message,
43
+ RedmineAvm::Settings.admin_user,
44
+ format(RedmineAvm::Settings.dependencies_section_missing_dependencies_message,
45
45
  ids: no_dependencies_section_ids_string)
46
46
  )
47
- @issue.status = Avm::Settings.issue_status_undefined
47
+ @issue.status = RedmineAvm::Settings.issue_status_undefined
48
48
  @issue.save!
49
49
  end
50
50
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Issue
5
5
  class MotivationCheck
6
6
  def initialize(issue)
@@ -10,7 +10,7 @@ module Avm
10
10
  def run
11
11
  return if motivated?
12
12
 
13
- Rails.logger.info("\##{@issue.id}: unmotivated")
13
+ Rails.logger.info("##{@issue.id}: unmotivated")
14
14
  undefine
15
15
  end
16
16
 
@@ -22,10 +22,10 @@ module Avm
22
22
 
23
23
  def undefine
24
24
  @issue.init_journal(
25
- Avm::Settings.admin_user,
26
- Avm::Settings.unmotivated_message
25
+ RedmineAvm::Settings.admin_user,
26
+ RedmineAvm::Settings.unmotivated_message
27
27
  )
28
- @issue.status = Avm::Settings.issue_status_undefined
28
+ @issue.status = RedmineAvm::Settings.issue_status_undefined
29
29
  @issue.save!
30
30
  end
31
31
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Issue
5
5
  class Unblock
6
6
  def initialize(issue)
@@ -12,7 +12,7 @@ module Avm
12
12
  if msg
13
13
  Rails.logger.debug(msg)
14
14
  else
15
- Rails.logger.debug("##{@issue.id} has no open dependencies. Unblocking...")
15
+ Rails.logger.debug { "##{@issue.id} has no open dependencies. Unblocking..." }
16
16
  unblock
17
17
  end
18
18
  end
@@ -21,11 +21,12 @@ module Avm
21
21
 
22
22
  def unblock? # rubocop:disable Naming/PredicateMethod
23
23
  return "##{@issue.id} is not blocked" unless status_blocked?
24
- return "##{@issue.id} has open dependencies" if open_dependencies?
24
+
25
+ "##{@issue.id} has open dependencies" if open_dependencies?
25
26
  end
26
27
 
27
28
  def status_blocked?
28
- @issue.status == Avm::Settings.issue_status_blocked
29
+ @issue.status == RedmineAvm::Settings.issue_status_blocked
29
30
  end
30
31
 
31
32
  def open_dependencies?
@@ -34,10 +35,10 @@ module Avm
34
35
 
35
36
  def unblock
36
37
  @issue.init_journal(
37
- Avm::Settings.admin_user,
38
- I18n.translate(:issue_unblock_message)
38
+ RedmineAvm::Settings.admin_user,
39
+ I18n.t(:issue_unblock_message)
39
40
  )
40
- @issue.status = Avm::Settings.issue_status_unblocked
41
+ @issue.status = RedmineAvm::Settings.issue_status_unblocked
41
42
  @issue.save!
42
43
  end
43
44
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Issue
5
5
  class Undefine
6
6
  def initialize(issue)
@@ -12,7 +12,7 @@ module Avm
12
12
  if msg
13
13
  Rails.logger.debug(msg)
14
14
  else
15
- Rails.logger.debug("##{@issue.id} has undefined dependencies. Undefining...")
15
+ Rails.logger.debug { "##{@issue.id} has undefined dependencies. Undefining..." }
16
16
  undefine
17
17
  end
18
18
  end
@@ -22,20 +22,21 @@ module Avm
22
22
  def undefine? # rubocop:disable Naming/PredicateMethod
23
23
  return "##{@issue.id} already undefined" if @issue.undefined?
24
24
  return "##{@issue.id} already closed" if @issue.closed?
25
- return "##{@issue.id} has no undefined dependencies" unless @issue.dependencies.any?(
25
+
26
+ "##{@issue.id} has no undefined dependencies" unless @issue.dependencies.any?(
26
27
  &:undefined?
27
28
  )
28
29
  end
29
30
 
30
31
  def undefine
31
32
  @issue.init_journal(
32
- Avm::Settings.admin_user,
33
- I18n.translate(
33
+ RedmineAvm::Settings.admin_user,
34
+ I18n.t(
34
35
  :issue_undefine_message,
35
36
  undefined_dependencies_ids: undefined_dependency_ids_string
36
37
  )
37
38
  )
38
- @issue.status = Avm::Settings.issue_status_undefined
39
+ @issue.status = RedmineAvm::Settings.issue_status_undefined
39
40
  @issue.save!
40
41
  end
41
42
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueAutoAssign
6
6
  attr_reader :event
@@ -11,14 +11,15 @@ module Avm
11
11
 
12
12
  def run
13
13
  issue = issue_to_check
14
- Avm::Issue::Assign.new(issue).run if issue
14
+ RedmineAvm::Issue::Assign.new(issue).run if issue
15
15
  end
16
16
 
17
17
  private
18
18
 
19
19
  def issue_to_check
20
20
  return event.data if event.issue_create?
21
- return event.data.issue if event.issue_update?
21
+
22
+ event.data.issue if event.issue_update?
22
23
  end
23
24
  end
24
25
  end
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueAutoUnblock
6
6
  module IssueDelete
7
7
  def issue_deleted
8
8
  return unless event.entity == ::Issue && event.action == :delete
9
9
 
10
- ::Issue.where(status: Avm::Settings.issue_status_blocked)
10
+ ::Issue.where(status: RedmineAvm::Settings.issue_status_blocked)
11
11
  end
12
12
 
13
13
  private
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueAutoUnblock
6
6
  module IssueRelationDelete
@@ -1,13 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueAutoUnblock
6
6
  module IssueUpdate
7
7
  def issue_updated
8
8
  return unless issue_update_event?
9
9
  return [issue] if status_changed_to_blocked?
10
- return issue.r_dependencies if status_changed_to_closed?
10
+
11
+ issue.r_dependencies if status_changed_to_closed?
11
12
  end
12
13
 
13
14
  private
@@ -25,7 +26,7 @@ module Avm
25
26
  end
26
27
 
27
28
  def status_changed_to_blocked?
28
- new_integer_value('status_id') == Avm::Settings.issue_status_blocked.id
29
+ new_integer_value('status_id') == RedmineAvm::Settings.issue_status_blocked.id
29
30
  end
30
31
 
31
32
  def new_integer_value(attr)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueAutoUnblock
6
6
  include IssueDelete
@@ -16,7 +16,7 @@ module Avm
16
16
  def run
17
17
  return if check_conditions
18
18
 
19
- Rails.logger.debug("Unblock condition not found for #{@event}")
19
+ Rails.logger.debug { "Unblock condition not found for #{@event}" }
20
20
  end
21
21
 
22
22
  def check_conditions
@@ -25,8 +25,8 @@ module Avm
25
25
  next unless issues
26
26
 
27
27
  issues.each do |issue|
28
- Rails.logger.debug("#{m}: #{issue}")
29
- Avm::Issue::Unblock.new(issue).run
28
+ Rails.logger.debug { "#{m}: #{issue}" }
29
+ RedmineAvm::Issue::Unblock.new(issue).run
30
30
  end
31
31
  true
32
32
  end
@@ -1,12 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueAutoUndefine
6
6
  module IssueCreate
7
7
  def issue_created_undefined
8
8
  return unless event.entity == Issue && event.action == :create
9
- return unless issue.status == Avm::Settings.issue_status_undefined
9
+ return unless issue.status == RedmineAvm::Settings.issue_status_undefined
10
10
  return unless issue.parent
11
11
 
12
12
  [issue.parent]
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueAutoUndefine
6
6
  module IssueRelationCreate
7
7
  def issue_relation_created_undefined
8
8
  return unless @event.entity == IssueRelation && @event.action == :create
9
9
  return unless relation.relation_type == IssueRelation::TYPE_BLOCKS
10
- return unless relation.issue_from.status == Avm::Settings.issue_status_undefined
10
+ return unless relation.issue_from.status == RedmineAvm::Settings.issue_status_undefined
11
11
 
12
12
  [relation.issue_to]
13
13
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueAutoUndefine
6
6
  module IssueUpdate
@@ -8,7 +8,8 @@ module Avm
8
8
  return unless issue_update_event?
9
9
  return journal.issue.r_dependencies if status_changed_to_undefined?
10
10
  return [journal.issue] if status_changed_from_undefined?
11
- return [journal.issue.parent] if parent_changed_and_undefined?
11
+
12
+ [journal.issue.parent] if parent_changed_and_undefined?
12
13
  end
13
14
 
14
15
  private
@@ -22,11 +23,11 @@ module Avm
22
23
  end
23
24
 
24
25
  def status_changed_to_undefined?
25
- new_integer_value('status_id') == Avm::Settings.issue_status_undefined.id
26
+ new_integer_value('status_id') == RedmineAvm::Settings.issue_status_undefined.id
26
27
  end
27
28
 
28
29
  def status_changed_from_undefined?
29
- old_integer_value('status_id') == Avm::Settings.issue_status_undefined.id
30
+ old_integer_value('status_id') == RedmineAvm::Settings.issue_status_undefined.id
30
31
  end
31
32
 
32
33
  def parent_changed_and_undefined?
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueAutoUndefine
6
6
  include IssueCreate
@@ -16,7 +16,7 @@ module Avm
16
16
  def run
17
17
  return if check_conditions
18
18
 
19
- Rails.logger.debug("Undefine condition not found for #{@event}")
19
+ Rails.logger.debug { "Undefine condition not found for #{@event}" }
20
20
  end
21
21
 
22
22
  def check_conditions
@@ -26,8 +26,8 @@ module Avm
26
26
  next unless issues
27
27
 
28
28
  issues.each do |issue|
29
- Rails.logger.debug("#{m}: #{issue}")
30
- Avm::Issue::Undefine.new(issue).run
29
+ Rails.logger.debug { "#{m}: #{issue}" }
30
+ RedmineAvm::Issue::Undefine.new(issue).run
31
31
  end
32
32
  true
33
33
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueDependenciesSectionCheck
6
6
  attr_reader :event
@@ -12,17 +12,18 @@ module Avm
12
12
  def run
13
13
  issue = issue_to_check
14
14
  return unless issue
15
- return if issue.status == Avm::Settings.issue_status_undefined
15
+ return if issue.status == RedmineAvm::Settings.issue_status_undefined
16
16
 
17
- Avm::Issue::DependenciesSectionCheck.new(issue).run if issue
17
+ RedmineAvm::Issue::DependenciesSectionCheck.new(issue).run if issue
18
18
  end
19
19
 
20
20
  private
21
21
 
22
22
  def issue_to_check
23
23
  return event.data.issue if event.issue_update?
24
- return event.data.issue_to if event.issue_relation_create? &&
25
- event.data.relation_type == IssueRelation::TYPE_BLOCKS
24
+
25
+ event.data.issue_to if event.issue_relation_create? &&
26
+ event.data.relation_type == IssueRelation::TYPE_BLOCKS
26
27
  end
27
28
  end
28
29
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  module Listeners
5
5
  class IssueMotivationCheck
6
6
  attr_reader :event
@@ -12,17 +12,18 @@ module Avm
12
12
  def run
13
13
  issue = issue_to_check
14
14
  return unless issue
15
- return if issue.status == Avm::Settings.issue_status_undefined
15
+ return if issue.status == RedmineAvm::Settings.issue_status_undefined
16
16
 
17
- Avm::Issue::MotivationCheck.new(issue).run if issue
17
+ RedmineAvm::Issue::MotivationCheck.new(issue).run if issue
18
18
  end
19
19
 
20
20
  private
21
21
 
22
22
  def issue_to_check
23
23
  return event.data.issue if event.issue_update?
24
- return event.data.issue_to if event.issue_relation_create? &&
25
- event.data.relation_type == IssueRelation::TYPE_BLOCKS
24
+
25
+ event.data.issue_to if event.issue_relation_create? &&
26
+ event.data.relation_type == IssueRelation::TYPE_BLOCKS
26
27
  end
27
28
  end
28
29
  end
@@ -10,14 +10,14 @@ module RedmineAvm
10
10
 
11
11
  module InstanceMethods
12
12
  def undefined?
13
- status == ::Avm::Settings.issue_status_undefined
13
+ status == ::RedmineAvm::Settings.issue_status_undefined
14
14
  end
15
15
 
16
16
  def description_section(section_title)
17
17
  ['h\1\.', '----', '$'].each do |e|
18
18
  m = /h([0-9])\.\s*#{Regexp.escape(section_title)}(.+)#{e}/m
19
- .match(description)
20
- return m[2].strip + "\r\n" if m
19
+ .match(description)
20
+ return m[2].strip + "\r\n" if m # rubocop:disable Style/StringConcatenation
21
21
  end
22
22
  nil
23
23
  end
@@ -37,7 +37,7 @@ module RedmineAvm
37
37
  end
38
38
 
39
39
  def dependencies_section
40
- description_section(::Avm::Settings.dependencies_section_title)
40
+ description_section(::RedmineAvm::Settings.dependencies_section_title)
41
41
  end
42
42
 
43
43
  def dependencies_section_dependencies
@@ -62,13 +62,13 @@ module RedmineAvm
62
62
  end
63
63
 
64
64
  def motivation_section
65
- description_section(::Avm::Settings.motivation_section_title)
65
+ description_section(::RedmineAvm::Settings.motivation_section_title)
66
66
  end
67
67
  end
68
68
  end
69
69
  end
70
70
  end
71
71
 
72
- unless ::Issue.included_modules.include? ::RedmineAvm::Patches::IssuePatch
73
- ::Issue.include ::RedmineAvm::Patches::IssuePatch
72
+ unless Issue.included_modules.include? RedmineAvm::Patches::IssuePatch
73
+ Issue.include RedmineAvm::Patches::IssuePatch
74
74
  end
@@ -11,6 +11,6 @@ module RedmineAvm
11
11
  end
12
12
 
13
13
  if Rails.env.test? &&
14
- !(::ActiveSupport::TestCase.included_modules.include? ::RedmineAvm::Patches::TestCasePatch)
15
- ::ActiveSupport::TestCase.include ::RedmineAvm::Patches::TestCasePatch
14
+ !(ActiveSupport::TestCase.included_modules.include? RedmineAvm::Patches::TestCasePatch)
15
+ ActiveSupport::TestCase.include RedmineAvm::Patches::TestCasePatch # rubocop:disable Rails/ActiveSupportOnLoad
16
16
  end
@@ -1,21 +1,21 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Avm
3
+ module RedmineAvm
4
4
  class Settings
5
5
  class << self
6
- def issue_status_undefined(raise_if_empty = true)
6
+ def issue_status_undefined(raise_if_empty = true) # rubocop:disable Style/OptionalBooleanParameter
7
7
  issue_status('issue_status_undefined_id', 'indefida', raise_if_empty)
8
8
  end
9
9
 
10
- def issue_status_blocked(raise_if_empty = true)
10
+ def issue_status_blocked(raise_if_empty = true) # rubocop:disable Style/OptionalBooleanParameter
11
11
  issue_status('issue_status_blocked_id', 'bloqueada', raise_if_empty)
12
12
  end
13
13
 
14
- def issue_status_unblocked(raise_if_empty = true)
14
+ def issue_status_unblocked(raise_if_empty = true) # rubocop:disable Style/OptionalBooleanParameter
15
15
  issue_status('issue_status_unblocked_id', 'desbloqueada', raise_if_empty)
16
16
  end
17
17
 
18
- def admin_user(raise_if_empty = true)
18
+ def admin_user(raise_if_empty = true) # rubocop:disable Style/OptionalBooleanParameter
19
19
  if Setting.plugin_redmine_avm['admin_user_id'].present?
20
20
  User.find(Setting.plugin_redmine_avm['admin_user_id'])
21
21
  elsif raise_if_empty
@@ -9,7 +9,7 @@ module RedmineAvm
9
9
  s['issue_status_unblocked_id'] = 2
10
10
  s['admin_user_id'] = 1
11
11
  ::Setting.plugin_redmine_avm = s
12
- ::ListenerOption.listener_enable('Avm::Listeners::IssueMotivationCheck', false)
12
+ ::ListenerOption.listener_enable('RedmineAvm::Listeners::IssueMotivationCheck', false)
13
13
  end
14
14
  end
15
15
  end
@@ -4,7 +4,7 @@ module RedmineAvm
4
4
  AUTHOR = 'Eduardo Henrique Bogoni'
5
5
  HOMEPAGE = 'https://github.com/esquilo-azul/redmine_avm'
6
6
  SUMMARY = 'AVM support for Redmine.'
7
- VERSION = '0.3.15'
7
+ VERSION = '0.3.16'
8
8
 
9
9
  module Version
10
10
  end
data/lib/tasks/issue.rake CHANGED
@@ -1,53 +1,53 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- namespace :avm do
4
- namespace :issue do
3
+ namespace :avm do # rubocop:disable Metrics/BlockLength
4
+ namespace :issue do # rubocop:disable Metrics/BlockLength
5
5
  desc 'Verifica auto-indefinição de uma tarefa'
6
6
  task :undefine, [:issue_id] => :environment do |_t, args|
7
- Avm::Issue::Undefine.new(Issue.find(args.issue_id)).run
7
+ RedmineAvm::Issue::Undefine.new(Issue.find(args.issue_id)).run
8
8
  end
9
9
 
10
10
  desc 'Verifica auto-indefinição de todas as tarefas indefinidas'
11
11
  task undefine_all: :environment do |_t, _args|
12
- Issue.where.not(status: Avm::Settings.issue_status_undefined).each do |i|
13
- Avm::Issue::Undefine.new(i).run
12
+ Issue.where.not(status: RedmineAvm::Settings.issue_status_undefined).each do |i| # rubocop:disable Rails/FindEach
13
+ RedmineAvm::Issue::Undefine.new(i).run
14
14
  end
15
15
  end
16
16
 
17
17
  desc 'Verifica auto-desbloqueio de uma tarefa'
18
18
  task unblock: :environment do |_t, _args|
19
- Issue.where(status: Avm::Settings.issue_status_blocked).each do |i|
20
- Avm::Issue::Unblock.new(i).run
19
+ Issue.where(status: RedmineAvm::Settings.issue_status_blocked).each do |i| # rubocop:disable Rails/FindEach
20
+ RedmineAvm::Issue::Unblock.new(i).run
21
21
  end
22
22
  end
23
23
 
24
24
  desc 'Verifica auto-desbloqueio de todas as tarefas'
25
25
  task unblock_all: :environment do |_t, _args|
26
- Issue.where(status: Avm::Settings.issue_status_blocked).each do |i|
27
- Avm::Issue::Unblock.new(i).run
26
+ Issue.where(status: RedmineAvm::Settings.issue_status_blocked).each do |i| # rubocop:disable Rails/FindEach
27
+ RedmineAvm::Issue::Unblock.new(i).run
28
28
  end
29
29
  end
30
30
 
31
31
  desc 'Verifica auto-atribuição de todas as tarefas'
32
32
  task assign_all: :environment do |_t, _args|
33
- Issue.all.each do |i|
34
- Avm::Issue::Assign.new(i).run
33
+ Issue.all.each do |i| # rubocop:disable Rails/FindEach
34
+ RedmineAvm::Issue::Assign.new(i).run
35
35
  end
36
36
  end
37
37
 
38
38
  desc 'Verifica a seção de dependências de todas as tarefas'
39
39
  task dependencies_section_check_all: :environment do |_t, _args|
40
40
  Issue.where(closed_on: nil)
41
- .where.not(status: Avm::Settings.issue_status_undefined).each do |i|
42
- Avm::Issue::DependenciesSectionCheck.new(i).run
41
+ .where.not(status: RedmineAvm::Settings.issue_status_undefined).each do |i| # rubocop:disable Rails/FindEach
42
+ RedmineAvm::Issue::DependenciesSectionCheck.new(i).run
43
43
  end
44
44
  end
45
45
 
46
46
  desc 'Verifica a ausência de motivação em todas as tarefas'
47
47
  task motivation_check_all: :environment do |_t, _args|
48
48
  Issue.where(closed_on: nil)
49
- .where.not(status: Avm::Settings.issue_status_undefined).each do |i|
50
- Avm::Issue::MotivationCheck.new(i).run
49
+ .where.not(status: RedmineAvm::Settings.issue_status_undefined).each do |i| # rubocop:disable Rails/FindEach
50
+ RedmineAvm::Issue::MotivationCheck.new(i).run
51
51
  end
52
52
  end
53
53
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redmine_avm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.15
4
+ version: 0.3.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eduardo Henrique Bogoni
@@ -44,26 +44,26 @@ files:
44
44
  - db/migrate/20160516164053_create_issue_status_assigns.rb
45
45
  - db/migrate/20180711164719_rename_plugin_avm_to_redmine_avm.rb
46
46
  - init.rb
47
- - lib/avm/issue/assign.rb
48
- - lib/avm/issue/dependencies_section_check.rb
49
- - lib/avm/issue/motivation_check.rb
50
- - lib/avm/issue/unblock.rb
51
- - lib/avm/issue/undefine.rb
52
- - lib/avm/listeners/issue_auto_assign.rb
53
- - lib/avm/listeners/issue_auto_unblock.rb
54
- - lib/avm/listeners/issue_auto_unblock/issue_delete.rb
55
- - lib/avm/listeners/issue_auto_unblock/issue_relation_delete.rb
56
- - lib/avm/listeners/issue_auto_unblock/issue_update.rb
57
- - lib/avm/listeners/issue_auto_undefine.rb
58
- - lib/avm/listeners/issue_auto_undefine/issue_create.rb
59
- - lib/avm/listeners/issue_auto_undefine/issue_relation_create.rb
60
- - lib/avm/listeners/issue_auto_undefine/issue_update.rb
61
- - lib/avm/listeners/issue_dependencies_section_check.rb
62
- - lib/avm/listeners/issue_motivation_check.rb
63
- - lib/avm/settings.rb
64
47
  - lib/redmine_avm.rb
48
+ - lib/redmine_avm/issue/assign.rb
49
+ - lib/redmine_avm/issue/dependencies_section_check.rb
50
+ - lib/redmine_avm/issue/motivation_check.rb
51
+ - lib/redmine_avm/issue/unblock.rb
52
+ - lib/redmine_avm/issue/undefine.rb
53
+ - lib/redmine_avm/listeners/issue_auto_assign.rb
54
+ - lib/redmine_avm/listeners/issue_auto_unblock.rb
55
+ - lib/redmine_avm/listeners/issue_auto_unblock/issue_delete.rb
56
+ - lib/redmine_avm/listeners/issue_auto_unblock/issue_relation_delete.rb
57
+ - lib/redmine_avm/listeners/issue_auto_unblock/issue_update.rb
58
+ - lib/redmine_avm/listeners/issue_auto_undefine.rb
59
+ - lib/redmine_avm/listeners/issue_auto_undefine/issue_create.rb
60
+ - lib/redmine_avm/listeners/issue_auto_undefine/issue_relation_create.rb
61
+ - lib/redmine_avm/listeners/issue_auto_undefine/issue_update.rb
62
+ - lib/redmine_avm/listeners/issue_dependencies_section_check.rb
63
+ - lib/redmine_avm/listeners/issue_motivation_check.rb
65
64
  - lib/redmine_avm/patches/issue_patch.rb
66
65
  - lib/redmine_avm/patches/test_case_patch.rb
66
+ - lib/redmine_avm/settings.rb
67
67
  - lib/redmine_avm/test_config.rb
68
68
  - lib/redmine_avm/version.rb
69
69
  - lib/tasks/issue.rake
@@ -79,7 +79,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: '2.7'
83
83
  required_rubygems_version: !ruby/object:Gem::Requirement
84
84
  requirements:
85
85
  - - ">="