sinclair 1.6.7 → 1.7.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: ecab9b7d077c8641fa413a2e8e8b673e2412a900f5a9322b81dff53e47a7c51d
4
- data.tar.gz: 816d60a81f193492df1fa44cc5ae405e8521c4dca914ff862171e3381e9e4c7f
3
+ metadata.gz: 4e9a5068ba9c9c0f3def716decd2cea72fbdea0e6a3255d2bd0d324462de4ef5
4
+ data.tar.gz: c067ae53d0320738e785675306dc7f8848851a3adb964217bd30593c15eaedbf
5
5
  SHA512:
6
- metadata.gz: 75b74e8881fe963bccff4b154727e354eeb9189d73774f86cbc53bbcea345d89cb34cc09fcd38db5136e9aad819f90179707ff7e6016e749c4fd336ef680169d
7
- data.tar.gz: 195d742d548b6d9cfe218dc23ba8ae8194882abf0203b5cda7c90f4f06f122e1768da71d7f51e05ca3f32563ef5335046ab0f5d5e9513fcaf1dd36eec50059cf
6
+ metadata.gz: ddc575979d46b47983aa57083243e674ac1da951e1e8407b98ee188a17e60e7683d5a73ad829914e34d076764970fb93484f9da67b767a89b301f47d081aad47
7
+ data.tar.gz: 0052e1e9b9e86758cf2b35c215509d6d4946b5e8bd0fde994b2e8121b83807de04d8c4e84d3fa3ee47565e4a07f89313f0ef871d6156f93ebdd7e6c8df0a83c5
data/.circleci/config.yml CHANGED
@@ -18,7 +18,7 @@ workflows:
18
18
  jobs:
19
19
  test:
20
20
  docker:
21
- - image: darthjee/circleci_ruby_gems:0.5.3
21
+ - image: darthjee/circleci_ruby_270:1.1.0
22
22
  environment:
23
23
  PROJECT: sinclair
24
24
  steps:
@@ -52,7 +52,7 @@ jobs:
52
52
  command: check_specs
53
53
  build-and-release:
54
54
  docker:
55
- - image: darthjee/circleci_ruby_gems:0.5.3
55
+ - image: darthjee/circleci_ruby_270:1.1.0
56
56
  environment:
57
57
  PROJECT: sinclair
58
58
  steps:
data/Dockerfile CHANGED
@@ -1,6 +1,6 @@
1
- FROM darthjee/scripts:0.1.8 as scripts
1
+ FROM darthjee/scripts:0.3.1 as scripts
2
2
 
3
- FROM darthjee/ruby_gems:0.5.3 as base
3
+ FROM darthjee/ruby_270:1.1.0 as base
4
4
 
5
5
  COPY --chown=app:app ./ /home/app/app/
6
6
 
data/README.md CHANGED
@@ -15,7 +15,7 @@ methods
15
15
 
16
16
  Yard Documentation
17
17
  -------------------
18
- [https://www.rubydoc.info/gems/sinclair/1.6.7](https://www.rubydoc.info/gems/sinclair/1.6.7)
18
+ [https://www.rubydoc.info/gems/sinclair/1.7.0](https://www.rubydoc.info/gems/sinclair/1.7.0)
19
19
 
20
20
  Installation
21
21
  ---------------
@@ -37,5 +37,51 @@ class Sinclair
37
37
  hash[attribute.to_s] = public_send(attribute)
38
38
  end
39
39
  end
40
+
41
+ # Returns options with configurated values
42
+ #
43
+ # The returned options will use the values defined in
44
+ # the config merged with the extra attributes
45
+ #
46
+ # @param options_hash [Hash] optional values for the options
47
+ #
48
+ # @return [Sinclair::Option]
49
+ #
50
+ # @example returning default options
51
+ # class LoginConfig < Sinclair::Config
52
+ # add_configs :password, username: 'bob'
53
+ # end
54
+ #
55
+ # class LoginConfigurable
56
+ # extend Sinclair::Configurable
57
+ #
58
+ # configurable_by LoginConfig
59
+ # end
60
+ #
61
+ # LoginConfigurable.configure do |conf|
62
+ # conf.username :some_username
63
+ # conf.password :some_password
64
+ # end
65
+ #
66
+ # options = LoginConfigurable.config.options
67
+ #
68
+ # config.options.username # returns :some_username
69
+ # config.options.password # returns :some_password
70
+ #
71
+ # @example returning custom options
72
+ # LoginConfigurable.configure do |conf|
73
+ # conf.username :some_username
74
+ # conf.password :some_password
75
+ # end
76
+ #
77
+ # options = LoginConfigurable.config.options(
78
+ # password: :correct_password
79
+ # )
80
+ #
81
+ # config.options.username # returns :some_username
82
+ # config.options.password # returns :correct_password
83
+ def options(options_hash = {})
84
+ self.class.options_class.new(to_hash.merge(options_hash))
85
+ end
40
86
  end
41
87
  end
@@ -89,8 +89,23 @@ class Sinclair
89
89
  Config::MethodsBuilder.new(self, *args).tap do |builder|
90
90
  builder.build
91
91
 
92
+ Sinclair::InputHash.input_hash(*args).each do |name, value|
93
+ options_class.with_options(name => value)
94
+ end
95
+
92
96
  config_attributes(*builder.config_names)
93
97
  end
94
98
  end
99
+
100
+ # @api private
101
+ # Returns the options class exclusive to this configurable
102
+ #
103
+ # The returned class is configured in parallel with the
104
+ # configurable itself
105
+ #
106
+ # @return [Class<Sinclair::Options>]
107
+ def options_class
108
+ @options_class ||= Class.new(Sinclair::Options)
109
+ end
95
110
  end
96
111
  end
@@ -78,6 +78,14 @@ class Sinclair
78
78
  # @see ConfigFactory#configure
79
79
  delegate :config, :reset_config, :configure, to: :config_factory
80
80
 
81
+ # @method options(options_hash = {})
82
+ # @api public
83
+ #
84
+ # @param (see Sinclair::Config#options)
85
+ # @return (see Sinclair::Config#options)
86
+ # @example (see Sinclair::Config#options)
87
+ delegate :options, to: :config
88
+
81
89
  protected
82
90
 
83
91
  # @api private
@@ -10,7 +10,33 @@ class Sinclair
10
10
  #
11
11
  # Builds final matcher
12
12
  #
13
+ # The matcher checks if a method was added
14
+ # to a class or instance
15
+ #
16
+ # @param [target] target where the method will be added
17
+ #
13
18
  # @return [Sinclair::Matchers::Base]
19
+ #
20
+ # @example
21
+ # RSpec.configure do |config|
22
+ # config.include Sinclair::Matchers
23
+ # end
24
+ #
25
+ # class MyModel
26
+ # end
27
+ #
28
+ # RSpec.describe 'my test' do
29
+ # let(:klass) { Class.new(MyModel) }
30
+ # let(:builder) { Sinclair.new(klass) }
31
+ #
32
+ # before do
33
+ # builder.add_method(:class_name, 'self.class.name')
34
+ # end
35
+ #
36
+ # it do
37
+ # expect { builder.build }.to add_method(:class_name).to(klass)
38
+ # end
39
+ # end
14
40
  def to(target = nil)
15
41
  add_method_to_class.new(target, method_name)
16
42
  end
@@ -7,26 +7,7 @@ class Sinclair
7
7
  # Matchers module will have the DSL to be included in RSpec in order to have
8
8
  # access to the matchers
9
9
  #
10
- # @example
11
- # RSpec.configure do |config|
12
- # config.include Sinclair::Matchers
13
- # end
14
- #
15
- # class MyModel
16
- # end
17
- #
18
- # RSpec.describe 'my test' do
19
- # let(:klass) { Class.new(MyModel) }
20
- # let(:builder) { Sinclair.new(klass) }
21
- #
22
- # before do
23
- # builder.add_method(:class_name, 'self.class.name')
24
- # end
25
- #
26
- # it do
27
- # expect { builder.build }.to add_method(:class_name).to(klass)
28
- # end
29
- # end
10
+ # @example (see Sinclair::Matchers::AddMethod#to)
30
11
  module Matchers
31
12
  autoload :Base, 'sinclair/matchers/base'
32
13
  autoload :AddInstanceMethod, 'sinclair/matchers/add_instance_method'
@@ -47,10 +47,7 @@ class Sinclair
47
47
  @skip_validation ||= superclass.try(:skip_validation?) || false
48
48
  end
49
49
 
50
- private
51
-
52
50
  # @api public
53
- # @!visibility public
54
51
  #
55
52
  # Add available options
56
53
  #
@@ -71,7 +68,6 @@ class Sinclair
71
68
  end
72
69
 
73
70
  # @api public
74
- # @!visibility public
75
71
  #
76
72
  # Changes class to skip attributes validation
77
73
  #
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class Sinclair
4
- VERSION = '1.6.7'
4
+ VERSION = '1.7.0'
5
5
  end
data/sinclair.gemspec CHANGED
@@ -21,20 +21,20 @@ Gem::Specification.new do |gem|
21
21
 
22
22
  gem.add_runtime_dependency 'activesupport', '~> 5.2.0'
23
23
 
24
- gem.add_development_dependency 'bundler', '1.16.1'
25
- gem.add_development_dependency 'pry', '0.12.2'
26
- gem.add_development_dependency 'pry-nav', '0.3.0'
24
+ gem.add_development_dependency 'bundler', '2.3.20'
25
+ gem.add_development_dependency 'pry', '0.14.1'
26
+ gem.add_development_dependency 'pry-nav', '1.0.0'
27
27
  gem.add_development_dependency 'rake', '13.0.1'
28
- gem.add_development_dependency 'reek', '5.6.0'
29
- gem.add_development_dependency 'rspec', '3.9.0'
30
- gem.add_development_dependency 'rspec-core', '3.9.1'
31
- gem.add_development_dependency 'rspec-expectations', '3.9.1'
32
- gem.add_development_dependency 'rspec-mocks', '3.9.1'
33
- gem.add_development_dependency 'rspec-support', '3.9.2'
28
+ gem.add_development_dependency 'reek', '6.0.3'
29
+ gem.add_development_dependency 'rspec', '3.11.0'
30
+ gem.add_development_dependency 'rspec-core', '3.11.0'
31
+ gem.add_development_dependency 'rspec-expectations', '3.11.0'
32
+ gem.add_development_dependency 'rspec-mocks', '3.11.1'
33
+ gem.add_development_dependency 'rspec-support', '3.11.0'
34
34
  gem.add_development_dependency 'rubocop', '0.80.1'
35
35
  gem.add_development_dependency 'rubocop-rspec', '1.38.1'
36
- gem.add_development_dependency 'rubycritic', '4.4.1'
37
- gem.add_development_dependency 'simplecov', '0.17.1'
38
- gem.add_development_dependency 'yard', '0.9.24'
36
+ gem.add_development_dependency 'rubycritic', '4.7.0'
37
+ gem.add_development_dependency 'simplecov', '0.21.2'
38
+ gem.add_development_dependency 'yard', '0.9.27'
39
39
  gem.add_development_dependency 'yardstick', '0.9.9'
40
40
  end
@@ -3,7 +3,7 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  describe MyClass do
6
- subject(:model) { klass.new(attributes) }
6
+ subject(:model) { klass.new(**attributes) }
7
7
 
8
8
  let(:klass) { described_class }
9
9
  let(:name) { 'name' }
@@ -24,5 +24,32 @@ describe Sinclair::Config do
24
24
  .to eq('{"password":null,"username":"bob"}')
25
25
  end
26
26
  end
27
+
28
+ describe '#options' do
29
+ subject(:config) { configurable.config }
30
+
31
+ let(:configurable) { LoginConfigurable }
32
+
33
+ before do
34
+ LoginConfigurable.configure do |conf|
35
+ conf.username :some_username
36
+ conf.password :some_password
37
+ end
38
+ end
39
+
40
+ it 'returns options with correct values' do
41
+ expect(config.options.username).to eq(:some_username)
42
+ expect(config.options.password).to eq(:some_password)
43
+ end
44
+
45
+ context 'when merging with given attributes' do
46
+ subject(:options) { config.options(password: :correct_password) }
47
+
48
+ it 'returns options with custom values' do
49
+ expect(options.username).to eq(:some_username)
50
+ expect(options.password).to eq(:correct_password)
51
+ end
52
+ end
53
+ end
27
54
  end
28
55
  end
@@ -16,38 +16,6 @@ describe Sinclair::ConfigClass do
16
16
  end
17
17
 
18
18
  describe '.add_configs' do
19
- let(:setter_block) do
20
- proc { |value| config.instance_variable_set(:@name, value) }
21
- end
22
-
23
- it_behaves_like 'a config methods builder adding config' do
24
- let(:code_block) { proc { klass.add_configs(:name) } }
25
-
26
- it 'sets nil value by default' do
27
- code_block.call
28
- expect(config.name).to be_nil
29
- end
30
-
31
- it 'adds attributes to class' do
32
- expect(&code_block).to change(klass, :config_attributes)
33
- .from([]).to(%i[name])
34
- end
35
- end
36
-
37
- context 'when giving defaults' do
38
- it_behaves_like 'a config methods builder adding config' do
39
- let(:code_block) { proc { klass.add_configs(name: 'Bob') } }
40
-
41
- it 'sets default value' do
42
- code_block.call
43
- expect(config.name).to eq('Bob')
44
- end
45
-
46
- it 'adds attributes to class' do
47
- expect(&code_block).to change(klass, :config_attributes)
48
- .from([]).to(%i[name])
49
- end
50
- end
51
- end
19
+ it_behaves_like 'a config class with .add_configs method'
52
20
  end
53
21
  end
@@ -13,6 +13,10 @@ describe Sinclair::Config do
13
13
  it_behaves_like 'a config class with .config_attributes method'
14
14
  end
15
15
 
16
+ describe '.add_configs' do
17
+ it_behaves_like 'a config class with .add_configs method'
18
+ end
19
+
16
20
  describe '#to_hash' do
17
21
  it 'returns empty hash' do
18
22
  expect(config.as_json).to eq({})
@@ -104,4 +108,71 @@ describe Sinclair::Config do
104
108
  end
105
109
  end
106
110
  end
111
+
112
+ describe '#options' do
113
+ let(:expected_options) do
114
+ klass.options_class.new(username: :user, password: nil)
115
+ end
116
+
117
+ before do
118
+ klass.add_configs(:password, username: :user)
119
+ end
120
+
121
+ it do
122
+ expect(config.options).to be_a(Sinclair::Options)
123
+ end
124
+
125
+ it 'returns an option with default values' do
126
+ expect(config.options)
127
+ .to eq(expected_options)
128
+ end
129
+
130
+ context 'when config has been changed' do
131
+ let(:builder) do
132
+ Sinclair::ConfigBuilder.new(config, :username, :password)
133
+ end
134
+
135
+ let(:expected_options) do
136
+ klass.options_class.new(
137
+ username: :other_user, password: :some_password
138
+ )
139
+ end
140
+
141
+ before do
142
+ builder.username :other_user
143
+ builder.password :some_password
144
+ end
145
+
146
+ it 'returns an option with values from config' do
147
+ expect(config.options)
148
+ .to eq(expected_options)
149
+ end
150
+ end
151
+
152
+ context 'when passing options_hash' do
153
+ let(:expected_options) do
154
+ klass.options_class.new(
155
+ username: :user, password: :some_password
156
+ )
157
+ end
158
+
159
+ it 'returns merged options' do
160
+ expect(config.options(password: :some_password))
161
+ .to eq(expected_options)
162
+ end
163
+ end
164
+
165
+ context 'when passing options_hash with string keys' do
166
+ let(:expected_options) do
167
+ klass.options_class.new(
168
+ username: :user, password: :some_password
169
+ )
170
+ end
171
+
172
+ it 'returns merged options' do
173
+ expect(config.options('password' => :some_password))
174
+ .to eq(expected_options)
175
+ end
176
+ end
177
+ end
107
178
  end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
2
+
3
+ class LoginConfigurable
4
+ extend Sinclair::Configurable
5
+
6
+ configurable_by LoginConfig
7
+ end
@@ -115,3 +115,51 @@ shared_examples 'a config class with .config_attributes method' do
115
115
  end
116
116
  end
117
117
  end
118
+
119
+ shared_examples 'a config class with .add_configs method' do
120
+ let(:setter_block) do
121
+ proc { |value| config.instance_variable_set(:@name, value) }
122
+ end
123
+
124
+ it_behaves_like 'a config methods builder adding config' do
125
+ let(:code_block) { proc { klass.add_configs(:name) } }
126
+
127
+ it 'sets nil value by default' do
128
+ code_block.call
129
+ expect(config.name).to be_nil
130
+ end
131
+
132
+ it 'adds attributes to class' do
133
+ expect(&code_block).to change(klass, :config_attributes)
134
+ .from([]).to(%i[name])
135
+ end
136
+
137
+ it do
138
+ expect(&code_block)
139
+ .to add_method(:name)
140
+ .to(klass.options_class)
141
+ end
142
+ end
143
+
144
+ context 'when giving defaults' do
145
+ it_behaves_like 'a config methods builder adding config' do
146
+ let(:code_block) { proc { klass.add_configs(name: 'Bob') } }
147
+
148
+ it 'sets default value' do
149
+ code_block.call
150
+ expect(config.name).to eq('Bob')
151
+ end
152
+
153
+ it 'adds attributes to class' do
154
+ expect(&code_block).to change(klass, :config_attributes)
155
+ .from([]).to(%i[name])
156
+ end
157
+
158
+ it do
159
+ expect(&code_block)
160
+ .to add_method(:name)
161
+ .to(klass.options_class)
162
+ end
163
+ end
164
+ end
165
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sinclair
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.7
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - DarthJee
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-01 00:00:00.000000000 Z
11
+ date: 2022-08-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -30,42 +30,42 @@ dependencies:
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 1.16.1
33
+ version: 2.3.20
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 1.16.1
40
+ version: 2.3.20
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: pry
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: 0.12.2
47
+ version: 0.14.1
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - '='
53
53
  - !ruby/object:Gem::Version
54
- version: 0.12.2
54
+ version: 0.14.1
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: pry-nav
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 0.3.0
61
+ version: 1.0.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: 0.3.0
68
+ version: 1.0.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rake
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -86,84 +86,84 @@ dependencies:
86
86
  requirements:
87
87
  - - '='
88
88
  - !ruby/object:Gem::Version
89
- version: 5.6.0
89
+ version: 6.0.3
90
90
  type: :development
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: 5.6.0
96
+ version: 6.0.3
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rspec
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - '='
102
102
  - !ruby/object:Gem::Version
103
- version: 3.9.0
103
+ version: 3.11.0
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - '='
109
109
  - !ruby/object:Gem::Version
110
- version: 3.9.0
110
+ version: 3.11.0
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rspec-core
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - '='
116
116
  - !ruby/object:Gem::Version
117
- version: 3.9.1
117
+ version: 3.11.0
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - '='
123
123
  - !ruby/object:Gem::Version
124
- version: 3.9.1
124
+ version: 3.11.0
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: rspec-expectations
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - '='
130
130
  - !ruby/object:Gem::Version
131
- version: 3.9.1
131
+ version: 3.11.0
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - '='
137
137
  - !ruby/object:Gem::Version
138
- version: 3.9.1
138
+ version: 3.11.0
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: rspec-mocks
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - '='
144
144
  - !ruby/object:Gem::Version
145
- version: 3.9.1
145
+ version: 3.11.1
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - '='
151
151
  - !ruby/object:Gem::Version
152
- version: 3.9.1
152
+ version: 3.11.1
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: rspec-support
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - '='
158
158
  - !ruby/object:Gem::Version
159
- version: 3.9.2
159
+ version: 3.11.0
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - '='
165
165
  - !ruby/object:Gem::Version
166
- version: 3.9.2
166
+ version: 3.11.0
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: rubocop
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -198,42 +198,42 @@ dependencies:
198
198
  requirements:
199
199
  - - '='
200
200
  - !ruby/object:Gem::Version
201
- version: 4.4.1
201
+ version: 4.7.0
202
202
  type: :development
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
206
  - - '='
207
207
  - !ruby/object:Gem::Version
208
- version: 4.4.1
208
+ version: 4.7.0
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: simplecov
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
213
  - - '='
214
214
  - !ruby/object:Gem::Version
215
- version: 0.17.1
215
+ version: 0.21.2
216
216
  type: :development
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
220
  - - '='
221
221
  - !ruby/object:Gem::Version
222
- version: 0.17.1
222
+ version: 0.21.2
223
223
  - !ruby/object:Gem::Dependency
224
224
  name: yard
225
225
  requirement: !ruby/object:Gem::Requirement
226
226
  requirements:
227
227
  - - '='
228
228
  - !ruby/object:Gem::Version
229
- version: 0.9.24
229
+ version: 0.9.27
230
230
  type: :development
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
234
  - - '='
235
235
  - !ruby/object:Gem::Version
236
- version: 0.9.24
236
+ version: 0.9.27
237
237
  - !ruby/object:Gem::Dependency
238
238
  name: yardstick
239
239
  requirement: !ruby/object:Gem::Requirement
@@ -387,6 +387,7 @@ files:
387
387
  - spec/support/models/http_person.rb
388
388
  - spec/support/models/initial_valuer.rb
389
389
  - spec/support/models/login_config.rb
390
+ - spec/support/models/login_configurable.rb
390
391
  - spec/support/models/my_app_client.rb
391
392
  - spec/support/models/my_builder.rb
392
393
  - spec/support/models/my_class.rb
@@ -426,8 +427,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
426
427
  - !ruby/object:Gem::Version
427
428
  version: '0'
428
429
  requirements: []
429
- rubyforge_project:
430
- rubygems_version: 2.7.6
430
+ rubygems_version: 3.3.20
431
431
  signing_key:
432
432
  specification_version: 4
433
433
  summary: Gem for easy concern creation