eac_ruby_utils 0.71.0 → 0.72.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: 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