eac_redmine_base0 0.4.1 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 338f8bfecc573d2e9e0e5bef3ce48477b0bb742ce70dfb64aa2ca8bf79287822
4
- data.tar.gz: 95750c2e28d9cb697902af7f89928bb3a2698df66cd03212ac933ce9efbbdfc2
3
+ metadata.gz: f9b88ec824e226607f3b0823ec77f1129e1df03cf7d09a93e1b29f9a6f720699
4
+ data.tar.gz: 577c3a612c3a56fa5ebe0f18bf130ba05bcb291d3b39358df615ea575f5b495e
5
5
  SHA512:
6
- metadata.gz: b83628836c8dcf3648e0e6b7d9fd310bdb46ec0b83d4d276b0f1946d830cda0b74945b61c68c568d9a2c33e21c3df41bd5e0e5a7c6ed69e0a70f3a0a4637e512
7
- data.tar.gz: 997a3cae6e40548756fa57a9a2c4854c77c5bc740f71c1298ecd0a9e439f3cdec29722296052423c0bf3a7d1b0a8de1cdecc11eb84fc7c14ee11cc9cd8324779
6
+ metadata.gz: f3c006e25010a444678328e122d01c5a5b166cb22cac6bae7212c2091767f0b640cefd62bd597f6cc6f19efa304a9c1fcd2ce2588655dc3a67edc92dc5dbe389
7
+ data.tar.gz: be704cbe0560e2464441a397cc50e879376569364f1a8a794af045de52a92497e33818900a7dca4352271768704864bd7002c2ea7532801cf774560e5954194d
data/init.rb CHANGED
@@ -10,7 +10,3 @@ Redmine::Plugin.register :eac_redmine_base0 do
10
10
  description ::EacRedmineBase0::SUMMARY
11
11
  version ::EacRedmineBase0::VERSION
12
12
  end
13
-
14
- Rails.configuration.to_prepare do
15
- require 'eac_redmine_base0/maintained_plugins'
16
- end
@@ -4,5 +4,5 @@ module EacRedmineBase0
4
4
  AUTHOR = 'Eduardo Henrique Bogoni'
5
5
  HOMEPAGE = 'https://github.com/esquilo-azul/eac_redmine_base0'
6
6
  SUMMARY = 'E.A.C. base for Redmine.'
7
- VERSION = '0.4.1'
7
+ VERSION = '0.5.0'
8
8
  end
metadata CHANGED
@@ -1,69 +1,63 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_redmine_base0
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
- - 0.4.1
7
+ - 0.5.0
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-05 00:00:00.000000000 Z
11
+ date: 2022-07-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: avm-tools
14
+ name: avm-eac_redmine_base0
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.62'
19
+ version: '0.6'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 0.62.4
22
+ version: 0.6.1
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '0.62'
29
+ version: '0.6'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 0.62.4
32
+ version: 0.6.1
33
33
  - !ruby/object:Gem::Dependency
34
- name: eac_ruby_gems_utils
34
+ name: avm-eac_redmine_plugin_base0
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '0.4'
39
+ version: '0.1'
40
40
  type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '0.4'
46
+ version: '0.1'
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: eac_ruby_gem_support
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '0.1'
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- version: 0.1.2
53
+ version: 0.5.1
57
54
  type: :development
58
55
  prerelease: false
59
56
  version_requirements: !ruby/object:Gem::Requirement
60
57
  requirements:
61
58
  - - "~>"
62
59
  - !ruby/object:Gem::Version
63
- version: '0.1'
64
- - - ">="
65
- - !ruby/object:Gem::Version
66
- version: 0.1.2
60
+ version: 0.5.1
67
61
  description:
68
62
  email:
69
63
  executables: []
@@ -72,15 +66,7 @@ extra_rdoc_files: []
72
66
  files:
73
67
  - init.rb
74
68
  - lib/eac_redmine_base0.rb
75
- - lib/eac_redmine_base0/maintained_plugins.rb
76
- - lib/eac_redmine_base0/plugins_test.rb
77
- - lib/eac_redmine_base0/plugins_test/base_test.rb
78
- - lib/eac_redmine_base0/plugins_test/plugin.rb
79
- - lib/eac_redmine_base0/plugins_test/rake_task_test.rb
80
- - lib/eac_redmine_base0/plugins_test/rubocop_test.rb
81
- - lib/eac_redmine_base0/plugins_test/unmaintened_stub_test.rb
82
69
  - lib/eac_redmine_base0/version.rb
83
- - lib/tasks/eac_redmine_base0.rake
84
70
  homepage: https://github.com/esquilo-azul/eac_redmine_base0
85
71
  licenses: []
86
72
  metadata: {}
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'redmine/plugin'
4
-
5
- module EacRedmineBase0
6
- MAINTAINED_PLUGINS_NAMES = %w[
7
- eac_redmine_base0 eac_redmine_usability notifyme redmine_avm redmine_events_manager
8
- redmine_installer redmine_nonproject_modules redmine_plugins_helper redmine_remotes
9
- redmine_tasks_scheduler redmine_with_git
10
- ].freeze
11
-
12
- class << self
13
- def maintained_plugins
14
- @maintained_plugins ||= ::Redmine::Plugin.registered_plugins.values.select do |plugin|
15
- MAINTAINED_PLUGINS_NAMES.include?(plugin.id.to_s)
16
- end
17
- end
18
- end
19
- end
@@ -1,50 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module EacRedmineBase0
6
- class PluginsTest
7
- class BaseTest
8
- enable_simple_cache
9
- common_constructor :plugin
10
-
11
- def stderr_log
12
- log_path('stderr')
13
- end
14
-
15
- def stdout_log
16
- log_path('stdout')
17
- end
18
-
19
- def test_name
20
- self.class.name.demodulize.gsub(/Test\z/, '').underscore
21
- end
22
-
23
- def to_s
24
- "#{plugin.id}/#{test_name}"
25
- end
26
-
27
- private
28
-
29
- def log_path(suffix)
30
- r = ::Rails.root.join('log', 'eac_redmine_base0',
31
- "#{plugin.id}_#{self.class.name.demodulize.underscore}_#{suffix}.log")
32
- ::FileUtils.mkdir_p(::File.dirname(r))
33
- r
34
- end
35
-
36
- def run_test_uncached
37
- r = run_test_command.execute
38
- ::File.write(stderr_log, r.fetch(:stderr))
39
- ::File.write(stdout_log, r.fetch(:stdout))
40
- r.fetch(:exit_code).zero?
41
- end
42
-
43
- def test_result_uncached
44
- ::Avm::Result.success_or_error(
45
- run_test, 'success', "failed (Log: #{stdout_log})"
46
- )
47
- end
48
- end
49
- end
50
- end
@@ -1,41 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'avm/patches/eac_ruby_gems_utils/gem'
4
- require 'avm/result'
5
- require 'eac_ruby_utils/simple_cache'
6
-
7
- module EacRedmineBase0
8
- class PluginsTest
9
- class Plugin < ::SimpleDelegator
10
- include ::EacRubyUtils::SimpleCache
11
-
12
- def initialize(plugin)
13
- super(plugin)
14
- end
15
-
16
- def maintained?
17
- ::EacRedmineBase0.maintained_plugins.any? { |plugin| plugin.id == id }
18
- end
19
-
20
- def tests
21
- return [test_by_type(:unmaintened_stub)] unless maintained?
22
-
23
- [test_by_type(:rake_task), test_by_type(:rubocop)]
24
- end
25
-
26
- private
27
-
28
- def test_by_type(type)
29
- ::EacRedmineBase0::PluginsTest.const_get(type.to_s.camelize + 'Test').new(self)
30
- end
31
-
32
- def plugin_gem_uncached
33
- ::EacRubyGemsUtils::Gem.new(directory)
34
- end
35
-
36
- def rails_gem_uncached
37
- ::EacRubyGemsUtils::Gem.new(::Rails.root)
38
- end
39
- end
40
- end
41
- end
@@ -1,29 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module EacRedmineBase0
6
- class PluginsTest
7
- class RakeTaskTest < ::EacRedmineBase0::PluginsTest::BaseTest
8
- def test_task?
9
- ::Rake::Task.task_defined?(test_task_name)
10
- end
11
-
12
- def test_task_name
13
- "#{plugin.id}:test"
14
- end
15
-
16
- private
17
-
18
- def run_test_command
19
- plugin.rails_gem.bundle('exec', 'rake', test_task_name).envvar('RAILS_ENV', 'test')
20
- end
21
-
22
- def test_result_uncached
23
- return ::Avm::Result.neutral("task \"#{test_task_name}\" not found") unless test_task?
24
-
25
- super
26
- end
27
- end
28
- end
29
- end
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module EacRedmineBase0
6
- class PluginsTest
7
- class RubocopTest < ::EacRedmineBase0::PluginsTest::BaseTest
8
- EXEC_NAME = GEM_NAME = 'rubocop'
9
-
10
- def rubocop?
11
- return false unless plugin.plugin_gem.gemfile_path.exist?
12
-
13
- bundle_install_command.execute!
14
- plugin.plugin_gem.gemfile_lock_gem_version(GEM_NAME).present?
15
- end
16
-
17
- private
18
-
19
- def bundle_install_command
20
- plugin.plugin_gem.bundle.chdir_root
21
- end
22
-
23
- def run_test_command
24
- plugin.plugin_gem.bundle('exec', EXEC_NAME, '--ignore-parent-exclusion')
25
- .envvar('RAILS_ENV', 'test')
26
- .chdir_root
27
- end
28
-
29
- def test_result_uncached
30
- return ::Avm::Result.neutral("gem \"#{GEM_NAME}\"not found") unless rubocop?
31
-
32
- super
33
- end
34
- end
35
- end
36
- end
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
-
5
- module EacRedmineBase0
6
- class PluginsTest
7
- class UnmaintenedStubTest < ::EacRedmineBase0::PluginsTest::BaseTest
8
- private
9
-
10
- def test_result_uncached
11
- ::Avm::Result.neutral('not maintained by E.A.C.')
12
- end
13
- end
14
- end
15
- end
@@ -1,54 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_cli/speaker'
4
- require 'eac_ruby_utils/core_ext'
5
- require 'eac_ruby_utils/envs'
6
- require 'eac_ruby_utils/speaker'
7
-
8
- module EacRedmineBase0
9
- class PluginsTest
10
- enable_speaker
11
-
12
- def run
13
- ::EacRubyUtils::Speaker.context.on(::EacCli::Speaker.new) do
14
- @tests = []
15
- ::Redmine::Plugin.registered_plugins.each_value do |plugin|
16
- check_plugin(plugin)
17
- end
18
- check_results
19
- end
20
- end
21
-
22
- def check_plugin(plugin)
23
- ::EacRedmineBase0::PluginsTest::Plugin.new(plugin).tests.each { |test| check_test(test) }
24
- end
25
-
26
- def check_test(test)
27
- infom "Checking test \"#{test}\"..."
28
- test.test_result
29
- infom "Test \"#{test}\" checked"
30
- @tests << test
31
- results_banner
32
- end
33
-
34
- def results_banner
35
- infom 'Tests\' results:'
36
- @tests.each do |test|
37
- infov " * #{test}", test.test_result.label
38
- end
39
- end
40
-
41
- def tests_failed
42
- @tests.select { |test| test.test_result.error? }
43
- end
44
-
45
- def check_results
46
- if tests_failed.any?
47
- fatal_error "Some test did not pass:\n" +
48
- tests_failed.map { |test| " * #{test} (Log: #{test.stdout_log})" }.join("\n")
49
- else
50
- success 'All tests passed'
51
- end
52
- end
53
- end
54
- end
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- $LOAD_PATH.unshift(::File.join(::File.dirname(__dir__)))
4
- require 'eac_redmine_base0'
5
-
6
- namespace :eac_redmine_base0 do
7
- namespace :plugins do
8
- desc 'Lists plugins maintained by E.A.C..'
9
- task list: :environment do
10
- ::EacRedmineBase0.maintained_plugins.each do |plugin|
11
- ::Rails.logger.info("Plugin: #{plugin.name} (ID: #{plugin.id})")
12
- end
13
- end
14
-
15
- desc 'Tests plugins maintained by E.A.C..'
16
- task test: :environment do
17
- ::EacRedmineBase0::PluginsTest.new.run
18
- end
19
- end
20
-
21
- task plugins: 'plugins:list'
22
- end