eac_ruby_utils 0.71.0 → 0.72.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5ac58b6068bc75fe11061fa1f801f9ad5968349e926091224a60b7f2e3ed035a
4
- data.tar.gz: 61d5b30e7d2e3c78c396024793dcc1666b062471793914910c2a787c717fc160
3
+ metadata.gz: 5b24691000bd2898cc25e42008b85e0fd995ccb59469c90ed3605e188b6647b7
4
+ data.tar.gz: 8f574e39585fad8cf17ebaedebad4effce286ee97d2e3b94365168f6b337b055
5
5
  SHA512:
6
- metadata.gz: eb8f48fff07497fb711ce0bff11268436073d191d94160c3f1c328a8330e55177b4697b4428bc3049ddf41ac9ebc13f8c3ebc4262898b17e7c2ce973d2a1bf30
7
- data.tar.gz: 2f12ec4daab1375f8d7165edc804e486dde44783b830dbe9d3d5c432d805658430e6674f9f2c5660ed1a07c5d2e53b4105d5905be3c61cfe902d6d2a434cb254
6
+ metadata.gz: 80d55c6dfe85ba433b85ab5564140fd392799a8a03e5608798c0ee6b74302cae8b4c181726d8c267546d98a512a35658ffefae984c5f96b1c3c0d916f3ca4aa2
7
+ data.tar.gz: d30fac4198006b23d93bc2aa7f34913be7ff833260ec4eaf59efe10f4ed35f30686f34509f730349539bc53288a5149a7d2431ec47bed958259fad8c6b63b11a
@@ -1,17 +1,19 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'eac_ruby_utils/rspec/setup'
3
+ require 'eac_ruby_utils/rspec/setup_manager'
4
4
 
5
5
  module EacRubyUtils
6
6
  module Rspec
7
7
  class << self
8
+ # @return [EacRubyUtils::Rspec::SetupManager]
8
9
  def default_setup
9
10
  @default_setup ||
10
11
  raise("Default instance was not set. Use #{self.class.name}.default_setup_create")
11
12
  end
12
13
 
14
+ # @return [EacRubyUtils::Rspec::SetupManager]
13
15
  def default_setup_create(app_root_path, rspec_config = nil)
14
- @default_setup = ::EacRubyUtils::Rspec::Setup.create(app_root_path, rspec_config)
16
+ @default_setup = ::EacRubyUtils::Rspec::SetupManager.create(app_root_path, rspec_config)
15
17
  end
16
18
  end
17
19
  end
@@ -1,44 +1,15 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'eac_ruby_utils/gems_registry'
4
- require 'eac_ruby_utils/patches/object/if_respond'
5
- require 'eac_ruby_utils/patches/object/to_pathname'
3
+ require 'eac_ruby_utils/core_ext'
6
4
 
7
5
  module EacRubyUtils
8
6
  module Rspec
9
7
  class Setup
10
- GEMS_REGISTRY_SUFFIX = 'Rspec::SetupInclude'
8
+ require_sub __FILE__
9
+ common_constructor :setup_obj
11
10
 
12
- class << self
13
- def create(app_root_path, rspec_config = nil)
14
- if rspec_config
15
- new(app_root_path, rspec_config)
16
- else
17
- ::RSpec.configure { |new_rspec_config| new(app_root_path, new_rspec_config) }
18
- end
19
- end
20
- end
21
-
22
- attr_reader :app_root_path, :rspec_config
23
-
24
- def initialize(app_root_path, rspec_config)
25
- @app_root_path = app_root_path.to_pathname
26
- @rspec_config = rspec_config
27
- include_registry
28
- end
29
-
30
- # @return [EacRubyUtils::GemsRegistry]
31
- def gems_registry
32
- @gems_registry ||= ::EacRubyUtils::GemsRegistry.new(GEMS_REGISTRY_SUFFIX)
33
- end
34
-
35
- protected
36
-
37
- def include_registry
38
- gems_registry.registered.each do |gem|
39
- singleton_class.include(gem.registered_module)
40
- gem.registered_module.setup(self) if gem.registered_module.respond_to?(:setup)
41
- end
11
+ def perform
12
+ setup_obj.singleton_class.include(::EacRubyUtils::Rspec::Setup::Conditionals)
42
13
  end
43
14
  end
44
15
  end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EacRubyUtils
4
+ module Rspec
5
+ class Setup
6
+ module Conditionals
7
+ def conditional(tag, &condition)
8
+ message = condition.call
9
+ return if message.blank?
10
+
11
+ puts("[WARN] Excluded tag: #{tag}: #{message}")
12
+ rspec_config.filter_run_excluding tag
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/gems_registry'
4
+ require 'eac_ruby_utils/patches/object/if_respond'
5
+ require 'eac_ruby_utils/patches/object/to_pathname'
6
+
7
+ module EacRubyUtils
8
+ module Rspec
9
+ class SetupManager
10
+ GEMS_REGISTRY_SUFFIX = 'Rspec::Setup'
11
+
12
+ class << self
13
+ def create(app_root_path, rspec_config = nil)
14
+ if rspec_config
15
+ new(app_root_path, rspec_config)
16
+ else
17
+ ::RSpec.configure { |new_rspec_config| new(app_root_path, new_rspec_config) }
18
+ end
19
+ end
20
+ end
21
+
22
+ attr_reader :app_root_path, :rspec_config
23
+
24
+ def initialize(app_root_path, rspec_config)
25
+ @app_root_path = app_root_path.to_pathname
26
+ @rspec_config = rspec_config
27
+ include_registry
28
+ end
29
+
30
+ # @return [EacRubyUtils::GemsRegistry]
31
+ def gems_registry
32
+ @gems_registry ||= ::EacRubyUtils::GemsRegistry.new(GEMS_REGISTRY_SUFFIX)
33
+ end
34
+
35
+ protected
36
+
37
+ def include_registry
38
+ gems_registry.registered.each do |gem|
39
+ gem.registered_module.new(self).perform
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacRubyUtils
4
- VERSION = '0.71.0'
4
+ VERSION = '0.72.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_ruby_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.71.0
4
+ version: 0.72.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esquilo Azul Company
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-29 00:00:00.000000000 Z
11
+ date: 2021-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -73,6 +73,9 @@ dependencies:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0.3'
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ version: 0.3.1
76
79
  type: :development
77
80
  prerelease: false
78
81
  version_requirements: !ruby/object:Gem::Requirement
@@ -80,6 +83,9 @@ dependencies:
80
83
  - - "~>"
81
84
  - !ruby/object:Gem::Version
82
85
  version: '0.3'
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: 0.3.1
83
89
  description:
84
90
  email:
85
91
  executables: []
@@ -199,10 +205,10 @@ files:
199
205
  - lib/eac_ruby_utils/regexp_parser.rb
200
206
  - lib/eac_ruby_utils/require_sub.rb
201
207
  - lib/eac_ruby_utils/rspec.rb
202
- - lib/eac_ruby_utils/rspec/conditional.rb
203
208
  - lib/eac_ruby_utils/rspec/default_setup.rb
204
209
  - lib/eac_ruby_utils/rspec/setup.rb
205
- - lib/eac_ruby_utils/rspec/stubbed_ssh.rb
210
+ - lib/eac_ruby_utils/rspec/setup/conditionals.rb
211
+ - lib/eac_ruby_utils/rspec/setup_manager.rb
206
212
  - lib/eac_ruby_utils/ruby.rb
207
213
  - lib/eac_ruby_utils/ruby/command.rb
208
214
  - lib/eac_ruby_utils/ruby/on_clean_environment.rb
@@ -1,35 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'active_support/core_ext/object/blank'
4
-
5
- module EacRubyUtils
6
- module Rspec
7
- class Conditional
8
- def self.default
9
- @default ||= new
10
- end
11
-
12
- def initialize
13
- @tags = {}
14
- end
15
-
16
- def add(tag, &condition)
17
- tags[tag] = condition
18
- end
19
-
20
- def configure(rspec_config)
21
- tags.each do |tag, condition|
22
- message = condition.call
23
- if message.present?
24
- puts("[WARN] Excluded tag: #{tag}: #{message}")
25
- rspec_config.filter_run_excluding tag
26
- end
27
- end
28
- end
29
-
30
- private
31
-
32
- attr_reader :tags
33
- end
34
- end
35
- end
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'active_support/core_ext/object/blank'
4
- require 'eac_ruby_utils/envs/ssh_env'
5
- require 'eac_ruby_utils/patches/object/if_present'
6
-
7
- module EacRubyUtils
8
- module Rspec
9
- class StubbedSsh
10
- DEFAULT_ENVVAR_NAME = 'STUBBED_SSH_URL'
11
-
12
- class << self
13
- def default
14
- @default ||= new(DEFAULT_ENVVAR_NAME)
15
- end
16
- end
17
-
18
- attr_reader :envvar_name
19
-
20
- def initialize(envvar_name)
21
- @envvar_name = envvar_name
22
- end
23
-
24
- def validate
25
- return nil if provided_url.present?
26
-
27
- "Environment variable \"#{envvar_name}\" unprovided or blank"
28
- end
29
-
30
- def validate!
31
- validate.if_present { |v| raise v }
32
- end
33
-
34
- def provided_url
35
- ENV[envvar_name]
36
- end
37
-
38
- def build_env
39
- validate!
40
- ::EacRubyUtils::Envs::SshEnv.new(provided_url)
41
- end
42
- end
43
- end
44
- end