eac_rails_gem_support 0.9.2 → 0.10.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: 2a6fcd6f580f7be01e18d9aca42ec603f8fbb0899eba33bbc5a221eb2707443d
4
- data.tar.gz: 9ab56e2e3fbbda15885aeef475f0efdb2637e31621e56a291d34781b08d9932e
3
+ metadata.gz: 33fdb6c18e82d93b8c5e07116f10c426a30639156796b2564ddeac9bd63aeaa7
4
+ data.tar.gz: e38caafa4918b002b808e27940fd8111730a9520fb58a689882578f318c484c3
5
5
  SHA512:
6
- metadata.gz: 560c67c7749079833866099ff384a77e8cbe63f4ee617cf1913c9807350205bb722f69347af04dfdc81c50eadd4640eb98bf28cadd013ace467308af720bb4d1
7
- data.tar.gz: 9868b1b6e5fda1725d25354984e77b90be6a51f6f52e2032854e30bdee551006d0bebdf19bab93a23a687de5cbef704c331639501338201dcb8d9f8e375698be
6
+ metadata.gz: 9fcd1a213693210bdef7ca6d38dc80f7a8003373f2f347c364c0b8923e23f045269dbc6e185eeb1c1c14e2a3453f39be53d087c0c49c59f62ea8cc47c6047dd5
7
+ data.tar.gz: ec8f89cc2f60564cc9acb25f5f45e521e2a34da29af4be7b6f87d4b31d8553558be080bae61ff1ad885f281e8bcaf5987bc652e2ffa59fb9ae97eb9fe3f1e71b
@@ -15,7 +15,7 @@ module EacRailsGemSupport
15
15
  obj.setup_rails_env
16
16
  return unless obj.setup_rails_app
17
17
 
18
- %w[fixtures capybara factory_bot].each do |item|
18
+ %w[fixtures capybara factory_bot shared_examples].each do |item|
19
19
  obj.send("setup_#{item}")
20
20
  end
21
21
  end
@@ -23,6 +23,10 @@ module EacRailsGemSupport
23
23
  def setup_minitest_support
24
24
  rspec_config.include ::EacRailsGemSupport::Rspec::MinitestSupport
25
25
  end
26
+
27
+ def setup_shared_examples
28
+ require 'eac_rails_gem_support/rspec/shared_examples/active_model_attribute_validator'
29
+ end
26
30
  end
27
31
  end
28
32
  end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.shared_examples 'active_model_attribute_validator' do |valid_values, invalid_values| # rubocop:disable Metrics/BlockLength
4
+ let(:model) do
5
+ validator = described_class.name.gsub(/Validator\z/, '').underscore
6
+ Class.new do
7
+ include ActiveModel::Model
8
+
9
+ attr_accessor :the_attribute
10
+
11
+ validates :the_attribute, validator => true, allow_nil: true
12
+ end
13
+ end
14
+ let(:record) { model.new }
15
+
16
+ { true => valid_values, false => invalid_values }.each do |valid, values|
17
+ values.each do |value|
18
+ context "when the_attribute is \"#{value}\"" do
19
+ before do
20
+ record.the_attribute = value
21
+ record.valid?
22
+ end
23
+
24
+ if valid
25
+ it { expect(record).to be_valid }
26
+ it { expect(record.errors[:the_attribute]).to eq([]) }
27
+ else
28
+ it { expect(record).not_to be_valid }
29
+ it { expect(record.errors[:the_attribute]).not_to eq([]) }
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacRailsGemSupport
4
- VERSION = '0.9.2'
4
+ VERSION = '0.10.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_rails_gem_support
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.2
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Put here the authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-10 00:00:00.000000000 Z
11
+ date: 2024-03-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: avm-eac_ruby_base1
@@ -70,14 +70,14 @@ dependencies:
70
70
  requirements:
71
71
  - - "~>"
72
72
  - !ruby/object:Gem::Version
73
- version: '0.120'
73
+ version: '0.121'
74
74
  type: :runtime
75
75
  prerelease: false
76
76
  version_requirements: !ruby/object:Gem::Requirement
77
77
  requirements:
78
78
  - - "~>"
79
79
  - !ruby/object:Gem::Version
80
- version: '0.120'
80
+ version: '0.121'
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: eac_templates
83
83
  requirement: !ruby/object:Gem::Requirement
@@ -85,6 +85,9 @@ dependencies:
85
85
  - - "~>"
86
86
  - !ruby/object:Gem::Version
87
87
  version: '0.5'
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ version: 0.5.1
88
91
  type: :runtime
89
92
  prerelease: false
90
93
  version_requirements: !ruby/object:Gem::Requirement
@@ -92,6 +95,9 @@ dependencies:
92
95
  - - "~>"
93
96
  - !ruby/object:Gem::Version
94
97
  version: '0.5'
98
+ - - ">="
99
+ - !ruby/object:Gem::Version
100
+ version: 0.5.1
95
101
  - !ruby/object:Gem::Dependency
96
102
  name: factory_bot_rails
97
103
  requirement: !ruby/object:Gem::Requirement
@@ -112,6 +118,40 @@ dependencies:
112
118
  - - ">="
113
119
  - !ruby/object:Gem::Version
114
120
  version: 6.4.3
121
+ - !ruby/object:Gem::Dependency
122
+ name: launchy
123
+ requirement: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - "~>"
126
+ - !ruby/object:Gem::Version
127
+ version: '2.5'
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: 2.5.2
131
+ type: :runtime
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '2.5'
138
+ - - ">="
139
+ - !ruby/object:Gem::Version
140
+ version: 2.5.2
141
+ - !ruby/object:Gem::Dependency
142
+ name: letter_opener
143
+ requirement: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - "~>"
146
+ - !ruby/object:Gem::Version
147
+ version: '1.9'
148
+ type: :runtime
149
+ prerelease: false
150
+ version_requirements: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - "~>"
153
+ - !ruby/object:Gem::Version
154
+ version: '1.9'
115
155
  - !ruby/object:Gem::Dependency
116
156
  name: rails
117
157
  requirement: !ruby/object:Gem::Requirement
@@ -157,6 +197,9 @@ dependencies:
157
197
  requirement: !ruby/object:Gem::Requirement
158
198
  requirements:
159
199
  - - "~>"
200
+ - !ruby/object:Gem::Version
201
+ version: '1.6'
202
+ - - ">="
160
203
  - !ruby/object:Gem::Version
161
204
  version: 1.6.9
162
205
  type: :runtime
@@ -164,6 +207,9 @@ dependencies:
164
207
  version_requirements: !ruby/object:Gem::Requirement
165
208
  requirements:
166
209
  - - "~>"
210
+ - !ruby/object:Gem::Version
211
+ version: '1.6'
212
+ - - ">="
167
213
  - !ruby/object:Gem::Version
168
214
  version: 1.6.9
169
215
  description:
@@ -183,6 +229,7 @@ files:
183
229
  - lib/eac_rails_gem_support/rspec/setup/factory_bot.rb
184
230
  - lib/eac_rails_gem_support/rspec/setup/fixtures.rb
185
231
  - lib/eac_rails_gem_support/rspec/setup/rails_app.rb
232
+ - lib/eac_rails_gem_support/rspec/shared_examples/active_model_attribute_validator.rb
186
233
  - lib/eac_rails_gem_support/version.rb
187
234
  - template/eac_rails_gem_support/rspec/appendable_rails_app/Gemfile.template
188
235
  - template/eac_rails_gem_support/rspec/appendable_rails_app/Rakefile