shoulda-matchers 2.3.0 → 2.4.0.rc1
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 +7 -0
- data/Appraisals +12 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +6 -11
- data/NEWS.md +6 -0
- data/features/rails_integration.feature +2 -3
- data/features/step_definitions/rails_steps.rb +40 -8
- data/gemfiles/3.0.gemfile +2 -1
- data/gemfiles/3.0.gemfile.lock +6 -6
- data/gemfiles/3.1.gemfile +2 -1
- data/gemfiles/3.1.gemfile.lock +6 -6
- data/gemfiles/3.2.gemfile +2 -1
- data/gemfiles/3.2.gemfile.lock +6 -6
- data/gemfiles/4.0.gemfile +17 -0
- data/gemfiles/4.0.gemfile.lock +152 -0
- data/lib/shoulda/matchers.rb +1 -0
- data/lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb +1 -1
- data/lib/shoulda/matchers/action_controller/set_the_flash_matcher.rb +24 -10
- data/lib/shoulda/matchers/active_model/allow_value_matcher.rb +13 -7
- data/lib/shoulda/matchers/active_model/disallow_value_matcher.rb +2 -2
- data/lib/shoulda/matchers/active_model/validate_confirmation_of_matcher.rb +18 -6
- data/lib/shoulda/matchers/active_model/validation_matcher.rb +4 -2
- data/lib/shoulda/matchers/active_record.rb +1 -0
- data/lib/shoulda/matchers/active_record/association_matcher.rb +18 -37
- data/lib/shoulda/matchers/active_record/association_matchers/counter_cache_matcher.rb +8 -3
- data/lib/shoulda/matchers/active_record/association_matchers/dependent_matcher.rb +8 -3
- data/lib/shoulda/matchers/active_record/association_matchers/model_reflector.rb +66 -4
- data/lib/shoulda/matchers/active_record/association_matchers/option_verifier.rb +93 -0
- data/lib/shoulda/matchers/active_record/association_matchers/order_matcher.rb +8 -3
- data/lib/shoulda/matchers/active_record/association_matchers/through_matcher.rb +7 -2
- data/lib/shoulda/matchers/integrations/test_unit.rb +10 -22
- data/lib/shoulda/matchers/rails_shim.rb +41 -0
- data/lib/shoulda/matchers/version.rb +1 -1
- data/shoulda-matchers.gemspec +1 -2
- data/spec/shoulda/matchers/action_controller/render_with_layout_matcher_spec.rb +7 -2
- data/spec/shoulda/matchers/action_controller/route_matcher_spec.rb +2 -2
- data/spec/shoulda/matchers/active_model/allow_mass_assignment_of_matcher_spec.rb +1 -1
- data/spec/shoulda/matchers/active_model/allow_value_matcher_spec.rb +24 -0
- data/spec/shoulda/matchers/active_model/disallow_value_matcher_spec.rb +24 -0
- data/spec/shoulda/matchers/active_model/helpers_spec.rb +5 -7
- data/spec/shoulda/matchers/active_record/association_matcher_spec.rb +46 -12
- data/spec/shoulda/matchers/active_record/have_db_column_matcher_spec.rb +1 -1
- data/spec/support/active_model_versions.rb +6 -6
- metadata +26 -55
@@ -88,7 +88,7 @@ describe Shoulda::Matchers::ActiveRecord::HaveDbColumnMatcher do
|
|
88
88
|
|
89
89
|
context 'with primary option' do
|
90
90
|
it 'accepts a column that is primary' do
|
91
|
-
with_table(:
|
91
|
+
with_table(:custom_id, :integer, :primary => true).
|
92
92
|
should have_db_column(:id).with_options(:primary => true)
|
93
93
|
end
|
94
94
|
|
@@ -1,13 +1,13 @@
|
|
1
1
|
RSpec.configure do |c|
|
2
|
-
def active_model_3_0?
|
3
|
-
::ActiveModel::VERSION::MAJOR == 3 && ::ActiveModel::VERSION::MINOR >= 0
|
4
|
-
end
|
5
|
-
|
6
2
|
def active_model_3_1?
|
7
|
-
::ActiveModel::VERSION::MAJOR == 3 && ::ActiveModel::VERSION::MINOR >= 1
|
3
|
+
(::ActiveModel::VERSION::MAJOR == 3 && ::ActiveModel::VERSION::MINOR >= 1) || active_model_4_0?
|
8
4
|
end
|
9
5
|
|
10
6
|
def active_model_3_2?
|
11
|
-
::ActiveModel::VERSION::MAJOR == 3 && ::ActiveModel::VERSION::MINOR >= 2
|
7
|
+
(::ActiveModel::VERSION::MAJOR == 3 && ::ActiveModel::VERSION::MINOR >= 2) || active_model_4_0?
|
8
|
+
end
|
9
|
+
|
10
|
+
def active_model_4_0?
|
11
|
+
::ActiveModel::VERSION::MAJOR == 4
|
12
12
|
end
|
13
13
|
end
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shoulda-matchers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
5
|
-
prerelease:
|
4
|
+
version: 2.4.0.rc1
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Tammer Saleh
|
@@ -19,23 +18,20 @@ dependencies:
|
|
19
18
|
- !ruby/object:Gem::Dependency
|
20
19
|
name: activesupport
|
21
20
|
requirement: !ruby/object:Gem::Requirement
|
22
|
-
none: false
|
23
21
|
requirements:
|
24
|
-
- -
|
22
|
+
- - '>='
|
25
23
|
- !ruby/object:Gem::Version
|
26
24
|
version: 3.0.0
|
27
25
|
type: :runtime
|
28
26
|
prerelease: false
|
29
27
|
version_requirements: !ruby/object:Gem::Requirement
|
30
|
-
none: false
|
31
28
|
requirements:
|
32
|
-
- -
|
29
|
+
- - '>='
|
33
30
|
- !ruby/object:Gem::Version
|
34
31
|
version: 3.0.0
|
35
32
|
- !ruby/object:Gem::Dependency
|
36
33
|
name: appraisal
|
37
34
|
requirement: !ruby/object:Gem::Requirement
|
38
|
-
none: false
|
39
35
|
requirements:
|
40
36
|
- - ~>
|
41
37
|
- !ruby/object:Gem::Version
|
@@ -43,7 +39,6 @@ dependencies:
|
|
43
39
|
type: :development
|
44
40
|
prerelease: false
|
45
41
|
version_requirements: !ruby/object:Gem::Requirement
|
46
|
-
none: false
|
47
42
|
requirements:
|
48
43
|
- - ~>
|
49
44
|
- !ruby/object:Gem::Version
|
@@ -51,23 +46,20 @@ dependencies:
|
|
51
46
|
- !ruby/object:Gem::Dependency
|
52
47
|
name: aruba
|
53
48
|
requirement: !ruby/object:Gem::Requirement
|
54
|
-
none: false
|
55
49
|
requirements:
|
56
|
-
- -
|
50
|
+
- - '>='
|
57
51
|
- !ruby/object:Gem::Version
|
58
52
|
version: '0'
|
59
53
|
type: :development
|
60
54
|
prerelease: false
|
61
55
|
version_requirements: !ruby/object:Gem::Requirement
|
62
|
-
none: false
|
63
56
|
requirements:
|
64
|
-
- -
|
57
|
+
- - '>='
|
65
58
|
- !ruby/object:Gem::Version
|
66
59
|
version: '0'
|
67
60
|
- !ruby/object:Gem::Dependency
|
68
61
|
name: bourne
|
69
62
|
requirement: !ruby/object:Gem::Requirement
|
70
|
-
none: false
|
71
63
|
requirements:
|
72
64
|
- - ~>
|
73
65
|
- !ruby/object:Gem::Version
|
@@ -75,7 +67,6 @@ dependencies:
|
|
75
67
|
type: :development
|
76
68
|
prerelease: false
|
77
69
|
version_requirements: !ruby/object:Gem::Requirement
|
78
|
-
none: false
|
79
70
|
requirements:
|
80
71
|
- - ~>
|
81
72
|
- !ruby/object:Gem::Version
|
@@ -83,7 +74,6 @@ dependencies:
|
|
83
74
|
- !ruby/object:Gem::Dependency
|
84
75
|
name: bundler
|
85
76
|
requirement: !ruby/object:Gem::Requirement
|
86
|
-
none: false
|
87
77
|
requirements:
|
88
78
|
- - ~>
|
89
79
|
- !ruby/object:Gem::Version
|
@@ -91,7 +81,6 @@ dependencies:
|
|
91
81
|
type: :development
|
92
82
|
prerelease: false
|
93
83
|
version_requirements: !ruby/object:Gem::Requirement
|
94
|
-
none: false
|
95
84
|
requirements:
|
96
85
|
- - ~>
|
97
86
|
- !ruby/object:Gem::Version
|
@@ -99,7 +88,6 @@ dependencies:
|
|
99
88
|
- !ruby/object:Gem::Dependency
|
100
89
|
name: cucumber
|
101
90
|
requirement: !ruby/object:Gem::Requirement
|
102
|
-
none: false
|
103
91
|
requirements:
|
104
92
|
- - ~>
|
105
93
|
- !ruby/object:Gem::Version
|
@@ -107,7 +95,6 @@ dependencies:
|
|
107
95
|
type: :development
|
108
96
|
prerelease: false
|
109
97
|
version_requirements: !ruby/object:Gem::Requirement
|
110
|
-
none: false
|
111
98
|
requirements:
|
112
99
|
- - ~>
|
113
100
|
- !ruby/object:Gem::Version
|
@@ -115,7 +102,6 @@ dependencies:
|
|
115
102
|
- !ruby/object:Gem::Dependency
|
116
103
|
name: rails
|
117
104
|
requirement: !ruby/object:Gem::Requirement
|
118
|
-
none: false
|
119
105
|
requirements:
|
120
106
|
- - ~>
|
121
107
|
- !ruby/object:Gem::Version
|
@@ -123,7 +109,6 @@ dependencies:
|
|
123
109
|
type: :development
|
124
110
|
prerelease: false
|
125
111
|
version_requirements: !ruby/object:Gem::Requirement
|
126
|
-
none: false
|
127
112
|
requirements:
|
128
113
|
- - ~>
|
129
114
|
- !ruby/object:Gem::Version
|
@@ -131,51 +116,37 @@ dependencies:
|
|
131
116
|
- !ruby/object:Gem::Dependency
|
132
117
|
name: rake
|
133
118
|
requirement: !ruby/object:Gem::Requirement
|
134
|
-
none: false
|
135
119
|
requirements:
|
136
|
-
- -
|
120
|
+
- - '>='
|
137
121
|
- !ruby/object:Gem::Version
|
138
122
|
version: 0.9.2
|
139
123
|
type: :development
|
140
124
|
prerelease: false
|
141
125
|
version_requirements: !ruby/object:Gem::Requirement
|
142
|
-
none: false
|
143
126
|
requirements:
|
144
|
-
- -
|
127
|
+
- - '>='
|
145
128
|
- !ruby/object:Gem::Version
|
146
129
|
version: 0.9.2
|
147
130
|
- !ruby/object:Gem::Dependency
|
148
131
|
name: rspec-rails
|
149
132
|
requirement: !ruby/object:Gem::Requirement
|
150
|
-
none: false
|
151
133
|
requirements:
|
152
|
-
- -
|
134
|
+
- - '>='
|
153
135
|
- !ruby/object:Gem::Version
|
154
|
-
version:
|
155
|
-
|
156
|
-
prerelease: false
|
157
|
-
version_requirements: !ruby/object:Gem::Requirement
|
158
|
-
none: false
|
159
|
-
requirements:
|
160
|
-
- - ~>
|
136
|
+
version: 2.13.1
|
137
|
+
- - <
|
161
138
|
- !ruby/object:Gem::Version
|
162
|
-
version: '
|
163
|
-
- !ruby/object:Gem::Dependency
|
164
|
-
name: strong_parameters
|
165
|
-
requirement: !ruby/object:Gem::Requirement
|
166
|
-
none: false
|
167
|
-
requirements:
|
168
|
-
- - ! '>='
|
169
|
-
- !ruby/object:Gem::Version
|
170
|
-
version: '0'
|
139
|
+
version: '3'
|
171
140
|
type: :development
|
172
141
|
prerelease: false
|
173
142
|
version_requirements: !ruby/object:Gem::Requirement
|
174
|
-
none: false
|
175
143
|
requirements:
|
176
|
-
- -
|
144
|
+
- - '>='
|
177
145
|
- !ruby/object:Gem::Version
|
178
|
-
version:
|
146
|
+
version: 2.13.1
|
147
|
+
- - <
|
148
|
+
- !ruby/object:Gem::Version
|
149
|
+
version: '3'
|
179
150
|
description: Making tests easy on the fingers and eyes
|
180
151
|
email: support@thoughtbot.com
|
181
152
|
executables: []
|
@@ -201,6 +172,8 @@ files:
|
|
201
172
|
- gemfiles/3.1.gemfile.lock
|
202
173
|
- gemfiles/3.2.gemfile
|
203
174
|
- gemfiles/3.2.gemfile.lock
|
175
|
+
- gemfiles/4.0.gemfile
|
176
|
+
- gemfiles/4.0.gemfile.lock
|
204
177
|
- lib/shoulda-matchers.rb
|
205
178
|
- lib/shoulda/matchers.rb
|
206
179
|
- lib/shoulda/matchers/action_controller.rb
|
@@ -239,6 +212,7 @@ files:
|
|
239
212
|
- lib/shoulda/matchers/active_record/association_matchers/counter_cache_matcher.rb
|
240
213
|
- lib/shoulda/matchers/active_record/association_matchers/dependent_matcher.rb
|
241
214
|
- lib/shoulda/matchers/active_record/association_matchers/model_reflector.rb
|
215
|
+
- lib/shoulda/matchers/active_record/association_matchers/option_verifier.rb
|
242
216
|
- lib/shoulda/matchers/active_record/association_matchers/order_matcher.rb
|
243
217
|
- lib/shoulda/matchers/active_record/association_matchers/through_matcher.rb
|
244
218
|
- lib/shoulda/matchers/active_record/have_db_column_matcher.rb
|
@@ -248,6 +222,7 @@ files:
|
|
248
222
|
- lib/shoulda/matchers/assertion_error.rb
|
249
223
|
- lib/shoulda/matchers/integrations/rspec.rb
|
250
224
|
- lib/shoulda/matchers/integrations/test_unit.rb
|
225
|
+
- lib/shoulda/matchers/rails_shim.rb
|
251
226
|
- lib/shoulda/matchers/version.rb
|
252
227
|
- shoulda-matchers.gemspec
|
253
228
|
- spec/shoulda/active_model/validate_uniqueness_of_matcher_spec.rb
|
@@ -295,30 +270,26 @@ files:
|
|
295
270
|
homepage: http://thoughtbot.com/community/
|
296
271
|
licenses:
|
297
272
|
- MIT
|
273
|
+
metadata: {}
|
298
274
|
post_install_message:
|
299
275
|
rdoc_options: []
|
300
276
|
require_paths:
|
301
277
|
- lib
|
302
278
|
required_ruby_version: !ruby/object:Gem::Requirement
|
303
|
-
none: false
|
304
279
|
requirements:
|
305
|
-
- -
|
280
|
+
- - '>='
|
306
281
|
- !ruby/object:Gem::Version
|
307
282
|
version: 1.9.2
|
308
283
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
309
|
-
none: false
|
310
284
|
requirements:
|
311
|
-
- -
|
285
|
+
- - '>'
|
312
286
|
- !ruby/object:Gem::Version
|
313
|
-
version:
|
314
|
-
segments:
|
315
|
-
- 0
|
316
|
-
hash: 1901679853552928105
|
287
|
+
version: 1.3.1
|
317
288
|
requirements: []
|
318
289
|
rubyforge_project:
|
319
|
-
rubygems_version:
|
290
|
+
rubygems_version: 2.0.2
|
320
291
|
signing_key:
|
321
|
-
specification_version:
|
292
|
+
specification_version: 4
|
322
293
|
summary: Making tests easy on the fingers and eyes
|
323
294
|
test_files:
|
324
295
|
- features/rails_integration.feature
|