rspec-expectations 3.13.0 → 3.13.4
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/Changelog.md +167 -134
- data/README.md +10 -4
- data/lib/rspec/expectations/block_snippet_extractor.rb +2 -0
- data/lib/rspec/expectations/configuration.rb +28 -14
- data/lib/rspec/expectations/failure_aggregator.rb +7 -0
- data/lib/rspec/expectations/handler.rb +4 -5
- data/lib/rspec/expectations/version.rb +1 -1
- data/lib/rspec/matchers/built_in/base_matcher.rb +4 -18
- data/lib/rspec/matchers/built_in/change.rb +2 -0
- data/lib/rspec/matchers/built_in/compound.rb +4 -1
- data/lib/rspec/matchers/built_in/contain_exactly.rb +2 -0
- data/lib/rspec/matchers/built_in/count_expectation.rb +2 -0
- data/lib/rspec/matchers/built_in/has.rb +29 -2
- data/lib/rspec/matchers/built_in/include.rb +5 -0
- data/lib/rspec/matchers/built_in/match.rb +14 -0
- data/lib/rspec/matchers/built_in/raise_error.rb +5 -1
- data/lib/rspec/matchers/built_in/satisfy.rb +2 -0
- data/lib/rspec/matchers/dsl.rb +6 -5
- data/lib/rspec/matchers/english_phrasing.rb +2 -0
- data/lib/rspec/matchers.rb +2 -0
- data.tar.gz.sig +0 -0
- metadata +21 -81
- metadata.gz.sig +2 -2
data/Changelog.md
CHANGED
@@ -1,5 +1,38 @@
|
|
1
1
|
### Development
|
2
|
-
[Full Changelog](
|
2
|
+
[Full Changelog](https://github.com/rspec/rspec/compare/rspec-expectations-v3.13.4...3-13-maintenance)
|
3
|
+
|
4
|
+
### 3.13.4 / 2025-05-01
|
5
|
+
|
6
|
+
Bug Fixes:
|
7
|
+
|
8
|
+
* Prevent `match` from trying to compare strings and arrays using `Array#match`. (Joseph Haig, rspec/rspec#183)
|
9
|
+
|
10
|
+
### 3.13.3 / 2024-09-07
|
11
|
+
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.13.2...v3.13.3)
|
12
|
+
|
13
|
+
Bug Fixes:
|
14
|
+
|
15
|
+
* Fix passing a regular expression to the `include` matcher without a count constraint.
|
16
|
+
(Jon Rowe, rspec/rspec-expectations#1485)
|
17
|
+
|
18
|
+
### 3.13.2 / 2024-08-20
|
19
|
+
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.13.1...v3.13.2)
|
20
|
+
|
21
|
+
Bug Fixes:
|
22
|
+
|
23
|
+
* When using null object doubles, prevent typos triggering dynamic matchers.
|
24
|
+
(Eric Mueller, rspec/rspec-expectations#1455)
|
25
|
+
* Use `RSpec.warning` for an expectation warning rather than `Kernel.warn`. (Jon Rowe, rspec/rspec-expectations#1472)
|
26
|
+
* Prevent mismatched use of block and value matchers in compound expectations. (Phil Pirozhkov, rspec/rspec-expectations#1476)
|
27
|
+
* Raise an error when passing no arguments to the `include` matcher. (Eric Mueller, rspec/rspec-expectations#1479)
|
28
|
+
|
29
|
+
### 3.13.1 / 2024-06-13
|
30
|
+
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.13.0...v3.13.1)
|
31
|
+
|
32
|
+
Bug Fixes:
|
33
|
+
|
34
|
+
* Fix the "false positive" warning message when using a negated `raise_error` matcher
|
35
|
+
with a `RegExp` instance. (Eric Mueller, rspec/rspec-expectations#1456)
|
3
36
|
|
4
37
|
### 3.13.0 / 2024-02-04
|
5
38
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.4...v3.13.0)
|
@@ -7,7 +40,7 @@
|
|
7
40
|
Enhancements:
|
8
41
|
|
9
42
|
* Update `eq` and `eql` matchers to better highlight difference in string encoding.
|
10
|
-
(Alan Foster, #1425)
|
43
|
+
(Alan Foster, rspec/rspec-expectations#1425)
|
11
44
|
|
12
45
|
### 3.12.4 / 2024-02-04
|
13
46
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.3...v3.12.4)
|
@@ -15,7 +48,7 @@ Enhancements:
|
|
15
48
|
Bug Fixes:
|
16
49
|
|
17
50
|
* Fix the diff for redefined `actual` and reassigned `@actual` in compound
|
18
|
-
expectations failure messages. (Phil Pirozhkov, #1440)
|
51
|
+
expectations failure messages. (Phil Pirozhkov, rspec/rspec-expectations#1440)
|
19
52
|
|
20
53
|
### 3.12.3 / 2023-04-20
|
21
54
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.2...v3.12.3)
|
@@ -24,7 +57,7 @@ Bug Fixes:
|
|
24
57
|
|
25
58
|
* Fix `include` matcher when fuzzy matching on keys with a hash-like actual which
|
26
59
|
has a non standard `key?` method which may raise.
|
27
|
-
(Jon Rowe, #1416)
|
60
|
+
(Jon Rowe, rspec/rspec-expectations#1416)
|
28
61
|
|
29
62
|
### 3.12.2 / 2023-01-07
|
30
63
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.1...v3.12.2)
|
@@ -32,16 +65,16 @@ Bug Fixes:
|
|
32
65
|
Bug Fixes:
|
33
66
|
|
34
67
|
* Prevent deprecation warning when using the `exist` matcher with `Dir`.
|
35
|
-
(Steve Dierker, #1398)
|
68
|
+
(Steve Dierker, rspec/rspec-expectations#1398)
|
36
69
|
|
37
70
|
### 3.12.1 / 2022-12-16
|
38
71
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.12.0...v3.12.1)
|
39
72
|
|
40
73
|
Bug Fixes:
|
41
74
|
|
42
|
-
* Pass keyword arguments through to aliased (and thus negated) matchers. (Jon Rowe, #1394)
|
75
|
+
* Pass keyword arguments through to aliased (and thus negated) matchers. (Jon Rowe, rspec/rspec-expectations#1394)
|
43
76
|
* When handling failures in an aggregated_failures block (or example) prevent
|
44
|
-
the failure list leaking out. (Maciek Rząsa, #1392)
|
77
|
+
the failure list leaking out. (Maciek Rząsa, rspec/rspec-expectations#1392)
|
45
78
|
|
46
79
|
### 3.12.0 / 2022-10-26
|
47
80
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.11.1...v3.12.0)
|
@@ -49,7 +82,7 @@ Bug Fixes:
|
|
49
82
|
Enhancements:
|
50
83
|
|
51
84
|
* Add `an_array_matching` alias for `match_array` to improve readability as an argument
|
52
|
-
matcher. (Mark Schneider, #1361)
|
85
|
+
matcher. (Mark Schneider, rspec/rspec-expectations#1361)
|
53
86
|
|
54
87
|
### 3.11.1 / 2022-09-12
|
55
88
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.11.0...v3.11.1)
|
@@ -57,33 +90,33 @@ Enhancements:
|
|
57
90
|
Bug Fixes:
|
58
91
|
|
59
92
|
* Allow the `contain_exactly` matcher to be reused by resetting its
|
60
|
-
internals on `matches?` (@bclayman-sq, #1326)
|
93
|
+
internals on `matches?` (@bclayman-sq, rspec/rspec-expectations#1326)
|
61
94
|
* Using the exist matcher on `FileTest` no longer produces a deprecation warning.
|
62
|
-
(Ryo Nakamura, #1383)
|
95
|
+
(Ryo Nakamura, rspec/rspec-expectations#1383)
|
63
96
|
|
64
97
|
### 3.11.0 / 2022-02-09
|
65
98
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.10.2...v3.11.0)
|
66
99
|
|
67
100
|
Enhancements:
|
68
101
|
|
69
|
-
* Return `true` from `aggregate_failures` when no exception occurs. (Jon Rowe, #1225)
|
102
|
+
* Return `true` from `aggregate_failures` when no exception occurs. (Jon Rowe, rspec/rspec-expectations#1225)
|
70
103
|
|
71
104
|
Deprecations:
|
72
105
|
|
73
106
|
* Print a deprecation message when using the implicit block expectation syntax.
|
74
|
-
(Phil Pirozhkov, #1139)
|
107
|
+
(Phil Pirozhkov, rspec/rspec-expectations#1139)
|
75
108
|
|
76
109
|
### 3.10.2 / 2022-01-14
|
77
110
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.10.1...v3.10.2)
|
78
111
|
|
79
112
|
Bug Fixes:
|
80
113
|
|
81
|
-
* Fix support for dynamic matchers for expectation target checks (Phil Pirozhkov, #1294)
|
114
|
+
* Fix support for dynamic matchers for expectation target checks (Phil Pirozhkov, rspec/rspec-expectations#1294)
|
82
115
|
* Fix `expect(array).to include(hash).times`, previously this would fail due to
|
83
116
|
matching the entire array as a single hash, rather than a member of the hash.
|
84
|
-
(Slava Kardakov, #1322)
|
117
|
+
(Slava Kardakov, rspec/rspec-expectations#1322)
|
85
118
|
* Ensure `raise_error` matches works with the `error_highlight` option from Ruby 3.1.
|
86
|
-
(Peter Goldstein, #1339)
|
119
|
+
(Peter Goldstein, rspec/rspec-expectations#1339)
|
87
120
|
|
88
121
|
### 3.10.1 / 2020-12-27
|
89
122
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.10.0...v3.10.1)
|
@@ -91,7 +124,7 @@ Bug Fixes:
|
|
91
124
|
Bug Fixes:
|
92
125
|
|
93
126
|
* Allow JRuby 9.2.x.x to generate backtraces normally rather than via our
|
94
|
-
backfill workaround. (#1230, Jon Rowe)
|
127
|
+
backfill workaround. (rspec/rspec-expectations#1230, Jon Rowe)
|
95
128
|
|
96
129
|
### 3.10.0 / 2020-10-30
|
97
130
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.9.3...v3.10.0)
|
@@ -99,19 +132,19 @@ Bug Fixes:
|
|
99
132
|
Enhancements:
|
100
133
|
|
101
134
|
* Allow `include` matcher to be chained with `once`, `at_least`, etc. for simple cases.
|
102
|
-
(Marc-André Lafortune, #1168)
|
103
|
-
* Add an explicit warning when `nil` is passed to `raise_error`. (Phil Pirozhkov, #1143)
|
104
|
-
* Improve `include` matcher's composability. (Phil Pirozhkov, #1155)
|
135
|
+
(Marc-André Lafortune, rspec/rspec-expectations#1168)
|
136
|
+
* Add an explicit warning when `nil` is passed to `raise_error`. (Phil Pirozhkov, rspec/rspec-expectations#1143)
|
137
|
+
* Improve `include` matcher's composability. (Phil Pirozhkov, rspec/rspec-expectations#1155)
|
105
138
|
* Mocks expectations can now set a custom failure message.
|
106
|
-
(Benoit Tigeot and Nicolas Zermati, #1156)
|
107
|
-
* `aggregate_failures` now shows the backtrace line for each failure. (Fabricio Bedin, #1163)
|
139
|
+
(Benoit Tigeot and Nicolas Zermati, rspec/rspec-expectations#1156)
|
140
|
+
* `aggregate_failures` now shows the backtrace line for each failure. (Fabricio Bedin, rspec/rspec-expectations#1163)
|
108
141
|
* Support multiple combinations of `yield_control` modifiers like `at_least`, `at_most`.
|
109
|
-
(Jon Rowe, #1169)
|
142
|
+
(Jon Rowe, rspec/rspec-expectations#1169)
|
110
143
|
* Dynamic `have_<n>` matchers now have output consistent with other dynamic matchers.
|
111
|
-
(Marc-André Lafortune, #1195)
|
144
|
+
(Marc-André Lafortune, rspec/rspec-expectations#1195)
|
112
145
|
* New config option `strict_predicate_matchers` allows predicate matcher to be strict
|
113
146
|
(i.e. match for `true` or `false`) instead of the default (match truthy vs `false` or `nil`).
|
114
|
-
(Marc-André Lafortune, #1196)
|
147
|
+
(Marc-André Lafortune, rspec/rspec-expectations#1196)
|
115
148
|
|
116
149
|
### 3.9.4 / 2020-10-29
|
117
150
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.9.3...v3.9.4)
|
@@ -119,7 +152,7 @@ Enhancements:
|
|
119
152
|
Bug Fixes:
|
120
153
|
|
121
154
|
* Fix regression with `be_` and `have_` matchers and arguments implementing `to_hash`
|
122
|
-
were they would act like keywords and be cast to a hash. (Jon Rowe, #1222)
|
155
|
+
were they would act like keywords and be cast to a hash. (Jon Rowe, rspec/rspec-expectations#1222)
|
123
156
|
|
124
157
|
### 3.9.3 / 2020-10-23
|
125
158
|
|
@@ -127,14 +160,14 @@ Bug Fixes:
|
|
127
160
|
|
128
161
|
* Swap the comparison of the delta vs the expected for the `be_within` matcher allowing
|
129
162
|
more complicated oobjects to be compared providing they provide `abs` and other
|
130
|
-
comparison methods. (Kelly Stannard, #1182)
|
131
|
-
* Properly format expected in the description of the `be_within` matcher. (Jon Rowe, #1185)
|
163
|
+
comparison methods. (Kelly Stannard, rspec/rspec-expectations#1182)
|
164
|
+
* Properly format expected in the description of the `be_within` matcher. (Jon Rowe, rspec/rspec-expectations#1185)
|
132
165
|
* Remove warning when using keyword arguments with `be_` and `have_` matchers on 2.7.x
|
133
|
-
(Jon Rowe, #1187)
|
166
|
+
(Jon Rowe, rspec/rspec-expectations#1187)
|
134
167
|
* Prevent formatting a single hash as a list of key value pairs in default failure messages
|
135
|
-
for custom matches (fixes formatting in `EnglishPhrasing#list`). (Robert Eshleman, #1193)
|
168
|
+
for custom matches (fixes formatting in `EnglishPhrasing#list`). (Robert Eshleman, rspec/rspec-expectations#1193)
|
136
169
|
* Prevent errors from causing false positives when using `be <operator>` comparison, e.g.
|
137
|
-
`expect(1).not_to be < 'a'` will now correctly fail rather than pass. (Jon Rowe, #1208)
|
170
|
+
`expect(1).not_to be < 'a'` will now correctly fail rather than pass. (Jon Rowe, rspec/rspec-expectations#1208)
|
138
171
|
|
139
172
|
|
140
173
|
### 3.9.2 / 2020-05-08
|
@@ -143,9 +176,9 @@ Bug Fixes:
|
|
143
176
|
Bug Fixes:
|
144
177
|
|
145
178
|
* Issue a proper `ArgumentError` when invalid arguments are given to `yield_control`
|
146
|
-
modifiers such as `at_least` et al. (Marc-André Lafortune, #1167)
|
179
|
+
modifiers such as `at_least` et al. (Marc-André Lafortune, rspec/rspec-expectations#1167)
|
147
180
|
* Prevent Ruby 2.7 keyword arguments warning from being issued by custom
|
148
|
-
matcher definitions. (Jon Rowe, #1176)
|
181
|
+
matcher definitions. (Jon Rowe, rspec/rspec-expectations#1176)
|
149
182
|
|
150
183
|
### 3.9.1 / 2020-03-13
|
151
184
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.9.0...v3.9.1)
|
@@ -153,7 +186,7 @@ Bug Fixes:
|
|
153
186
|
Bug Fixes:
|
154
187
|
|
155
188
|
* Issue an improved warning when using `respond_to(...).with(n).arguments` and ignore
|
156
|
-
the warning when using with `have_attributes(...)`. (Jon Rowe, #1164)
|
189
|
+
the warning when using with `have_attributes(...)`. (Jon Rowe, rspec/rspec-expectations#1164)
|
157
190
|
|
158
191
|
### 3.9.0 / 2019-10-08
|
159
192
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.6...v3.9.0)
|
@@ -161,19 +194,19 @@ Bug Fixes:
|
|
161
194
|
Enhancements:
|
162
195
|
|
163
196
|
* The `respond_to` matcher now uses the signature from `initialize` to validate checks
|
164
|
-
for `new` (unless `new` is non standard). (Jon Rowe, #1072)
|
197
|
+
for `new` (unless `new` is non standard). (Jon Rowe, rspec/rspec-expectations#1072)
|
165
198
|
* Generated descriptions for matchers now use `is expected to` rather than `should` in
|
166
|
-
line with our preferred DSL. (Pete Johns, #1080, rspec/rspec-
|
199
|
+
line with our preferred DSL. (Pete Johns, rspec/rspec-expectations#1080, rspec/rspec-corerspec/rspec-expectations#2572)
|
167
200
|
* Add the ability to re-raise expectation errors when matching
|
168
|
-
with `match_when_negated` blocks. (Jon Rowe, #1130)
|
201
|
+
with `match_when_negated` blocks. (Jon Rowe, rspec/rspec-expectations#1130)
|
169
202
|
* Add a warning when an empty diff is produce due to identical inspect output.
|
170
|
-
(Benoit Tigeot, #1126)
|
203
|
+
(Benoit Tigeot, rspec/rspec-expectations#1126)
|
171
204
|
|
172
205
|
### 3.8.6 / 2019-10-07
|
173
206
|
|
174
207
|
Bug Fixes:
|
175
208
|
|
176
|
-
* Revert #1125 due to the change being incompatible with our semantic versioning
|
209
|
+
* Revert rspec/rspec-expectations#1125 due to the change being incompatible with our semantic versioning
|
177
210
|
policy.
|
178
211
|
|
179
212
|
### 3.8.5 / 2019-10-02
|
@@ -182,7 +215,7 @@ Bug Fixes:
|
|
182
215
|
Bug Fixes:
|
183
216
|
|
184
217
|
* Prevent unsupported implicit block expectation syntax from being used.
|
185
|
-
(Phil Pirozhkov, #1125)
|
218
|
+
(Phil Pirozhkov, rspec/rspec-expectations#1125)
|
186
219
|
|
187
220
|
### 3.8.4 / 2019-06-10
|
188
221
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.3...v3.8.4)
|
@@ -190,7 +223,7 @@ Bug Fixes:
|
|
190
223
|
Bug Fixes:
|
191
224
|
|
192
225
|
* Prevent false negatives when checking objects for the methods required to run the
|
193
|
-
the `be_an_instance_of` and `be_kind_of` matchers. (Nazar Matus, #1112)
|
226
|
+
the `be_an_instance_of` and `be_kind_of` matchers. (Nazar Matus, rspec/rspec-expectations#1112)
|
194
227
|
|
195
228
|
### 3.8.3 / 2019-04-20
|
196
229
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.2...v3.8.3)
|
@@ -198,12 +231,12 @@ Bug Fixes:
|
|
198
231
|
Bug Fixes:
|
199
232
|
|
200
233
|
* Prevent composed `all` matchers from leaking into their siblings leading to duplicate
|
201
|
-
failures. (Jamie English, #1086)
|
234
|
+
failures. (Jamie English, rspec/rspec-expectations#1086)
|
202
235
|
* Prevent objects which change their hash on comparison from failing change checks.
|
203
|
-
(Phil Pirozhkov, #1100)
|
236
|
+
(Phil Pirozhkov, rspec/rspec-expectations#1100)
|
204
237
|
* Issue an `ArgumentError` rather than a `NoMethodError` when `be_an_instance_of` and
|
205
238
|
`be_kind_of` matchers encounter objects not supporting those methods.
|
206
|
-
(Taichi Ishitani, #1107)
|
239
|
+
(Taichi Ishitani, rspec/rspec-expectations#1107)
|
207
240
|
|
208
241
|
### 3.8.2 / 2018-10-09
|
209
242
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.1...v3.8.2)
|
@@ -211,9 +244,9 @@ Bug Fixes:
|
|
211
244
|
Bug Fixes:
|
212
245
|
|
213
246
|
* Change `include` matcher to rely on a `respond_to?(:include?)` check rather than a direct
|
214
|
-
Hash comparison before calling `to_hash` to convert to a hash. (Jordan Owens, #1073)
|
247
|
+
Hash comparison before calling `to_hash` to convert to a hash. (Jordan Owens, rspec/rspec-expectations#1073)
|
215
248
|
* Prevent unexpected call stack jumps from causing an obscure error (`IndexError`), and
|
216
|
-
replace that error with a proper informative message. (Jon Rowe, #1076)
|
249
|
+
replace that error with a proper informative message. (Jon Rowe, rspec/rspec-expectations#1076)
|
217
250
|
|
218
251
|
### 3.8.1 / 2018-08-06
|
219
252
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.0...v3.8.1)
|
@@ -222,7 +255,7 @@ Bug Fixes:
|
|
222
255
|
|
223
256
|
* Fix regression in `include` matcher so stopped
|
224
257
|
`expect(hash.with_indifferent_access).to include(:symbol_key)`
|
225
|
-
from working. (Eito Katagiri, #1069)
|
258
|
+
from working. (Eito Katagiri, rspec/rspec-expectations#1069)
|
226
259
|
|
227
260
|
### 3.8.0 / 2018-08-04
|
228
261
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.7.0...v3.8.0)
|
@@ -230,20 +263,20 @@ Bug Fixes:
|
|
230
263
|
Enhancements:
|
231
264
|
|
232
265
|
* Improve failure message of `change(receiver, :message)` by including the
|
233
|
-
receiver as `SomeClass#some_message`. (Tomohiro Hashidate, #1005)
|
266
|
+
receiver as `SomeClass#some_message`. (Tomohiro Hashidate, rspec/rspec-expectations#1005)
|
234
267
|
* Improve `change` matcher so that it can correctly detect changes in
|
235
268
|
deeply nested mutable objects (such as arrays-of-hashes-of-arrays).
|
236
269
|
The improved logic uses the before/after `hash` value to see if the
|
237
270
|
object has been mutated, rather than shallow duping the object.
|
238
|
-
(Myron Marston, #1034)
|
271
|
+
(Myron Marston, rspec/rspec-expectations#1034)
|
239
272
|
* Improve `include` matcher so that pseudo-hash objects (e.g. objects
|
240
273
|
that decorate a hash using a `SimpleDelegator` or similar) are treated
|
241
|
-
as a hash, as long as they implement `to_hash`. (Pablo Brasero, #1012)
|
274
|
+
as a hash, as long as they implement `to_hash`. (Pablo Brasero, rspec/rspec-expectations#1012)
|
242
275
|
* Add `max_formatted_output_length=` to configuration, allowing changing
|
243
276
|
the length at which we truncate large output strings.
|
244
|
-
(Sam Phippen #951, Benoit Tigeot #1056)
|
277
|
+
(Sam Phippen rspec/rspec-expectations#951, Benoit Tigeot rspec/rspec-expectations#1056)
|
245
278
|
* Improve error message when passing a matcher that doesn't support block
|
246
|
-
expectations to a block based `expect`. (@nicktime, #1066)
|
279
|
+
expectations to a block based `expect`. (@nicktime, rspec/rspec-expectations#1066)
|
247
280
|
|
248
281
|
### 3.7.0 / 2017-10-17
|
249
282
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.6.0...v3.7.0)
|
@@ -251,27 +284,27 @@ Enhancements:
|
|
251
284
|
Enhancements:
|
252
285
|
|
253
286
|
* Improve compatibility with `--enable-frozen-string-literal` option
|
254
|
-
on Ruby 2.3+. (Pat Allan, #997)
|
287
|
+
on Ruby 2.3+. (Pat Allan, rspec/rspec-expectations#997)
|
255
288
|
|
256
289
|
### 3.6.0 / 2017-05-04
|
257
290
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.6.0.beta2...v3.6.0)
|
258
291
|
|
259
292
|
Enhancements:
|
260
293
|
|
261
|
-
* Treat NoMethodError as a failure for comparison matchers. (Jon Rowe, #972)
|
294
|
+
* Treat NoMethodError as a failure for comparison matchers. (Jon Rowe, rspec/rspec-expectations#972)
|
262
295
|
* Allow for scoped aliased and negated matchers--just call
|
263
296
|
`alias_matcher` or `define_negated_matcher` from within an example
|
264
|
-
group. (Markus Reiter, #974)
|
297
|
+
group. (Markus Reiter, rspec/rspec-expectations#974)
|
265
298
|
* Improve failure message of `change` matcher with block and `satisfy` matcher
|
266
299
|
by including the block snippet instead of just describing it as `result` or
|
267
|
-
`block` when Ripper is available. (Yuji Nakayama, #987)
|
300
|
+
`block` when Ripper is available. (Yuji Nakayama, rspec/rspec-expectations#987)
|
268
301
|
|
269
302
|
Bug Fixes:
|
270
303
|
|
271
304
|
* Fix `yield_with_args` and `yield_successive_args` matchers so that
|
272
305
|
they compare expected to actual args at the time the args are yielded
|
273
306
|
instead of at the end, in case the method that is yielding mutates the
|
274
|
-
arguments after yielding. (Alyssa Ross, #965)
|
307
|
+
arguments after yielding. (Alyssa Ross, rspec/rspec-expectations#965)
|
275
308
|
|
276
309
|
### 3.6.0.beta2 / 2016-12-12
|
277
310
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.6.0.beta1...v3.6.0.beta2)
|
@@ -279,29 +312,29 @@ Bug Fixes:
|
|
279
312
|
Bug Fixes:
|
280
313
|
|
281
314
|
* Using the exist matcher on `File` no longer produces a deprecation warning.
|
282
|
-
(Jon Rowe, #954)
|
315
|
+
(Jon Rowe, rspec/rspec-expectations#954)
|
283
316
|
|
284
317
|
### 3.6.0.beta1 / 2016-10-09
|
285
318
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0...v3.6.0.beta1)
|
286
319
|
|
287
320
|
Bug Fixes:
|
288
321
|
|
289
|
-
* Fix `contain_exactly` to work correctly with ranges. (Myron Marston, #940)
|
290
|
-
* Fix `change` to work correctly with sets. (Marcin Gajewski, #939)
|
322
|
+
* Fix `contain_exactly` to work correctly with ranges. (Myron Marston, rspec/rspec-expectations#940)
|
323
|
+
* Fix `change` to work correctly with sets. (Marcin Gajewski, rspec/rspec-expectations#939)
|
291
324
|
|
292
325
|
### 3.5.0 / 2016-07-01
|
293
326
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0.beta4...v3.5.0)
|
294
327
|
|
295
328
|
Enhancements:
|
296
329
|
|
297
|
-
* Add support for keyword arguments to the `respond_to` matcher. (Rob Smith, #915).
|
330
|
+
* Add support for keyword arguments to the `respond_to` matcher. (Rob Smith, rspec/rspec-expectations#915).
|
298
331
|
|
299
332
|
### 3.5.0.beta4 / 2016-06-05
|
300
333
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0.beta3...v3.5.0.beta4)
|
301
334
|
|
302
335
|
Bug Fixes:
|
303
336
|
|
304
|
-
* Fix `include` matcher so that it provides a valid diff for hashes. (Yuji Nakayama, #916)
|
337
|
+
* Fix `include` matcher so that it provides a valid diff for hashes. (Yuji Nakayama, rspec/rspec-expectations#916)
|
305
338
|
|
306
339
|
### 3.5.0.beta3 / 2016-04-02
|
307
340
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0.beta2...v3.5.0.beta3)
|
@@ -309,11 +342,11 @@ Bug Fixes:
|
|
309
342
|
Enhancements:
|
310
343
|
|
311
344
|
* Make `rspec/expectations/minitest_integration` work on Minitest::Spec
|
312
|
-
5.6+. (Myron Marston, #904)
|
345
|
+
5.6+. (Myron Marston, rspec/rspec-expectations#904)
|
313
346
|
* Add an alias `having_attributes` for `have_attributes` matcher.
|
314
|
-
(Yuji Nakayama, #905)
|
347
|
+
(Yuji Nakayama, rspec/rspec-expectations#905)
|
315
348
|
* Improve `change` matcher error message when block is mis-used.
|
316
|
-
(Alex Altair, #908)
|
349
|
+
(Alex Altair, rspec/rspec-expectations#908)
|
317
350
|
|
318
351
|
### 3.5.0.beta2 / 2016-03-10
|
319
352
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0.beta1...v3.5.0.beta2)
|
@@ -321,15 +354,15 @@ Enhancements:
|
|
321
354
|
Enhancements:
|
322
355
|
|
323
356
|
* Add the ability to raise an error on encountering false positives via
|
324
|
-
`RSpec::Configuration#on_potential_false_positives = :raise`. (Jon Rowe, #900)
|
357
|
+
`RSpec::Configuration#on_potential_false_positives = :raise`. (Jon Rowe, rspec/rspec-expectations#900)
|
325
358
|
* When using the custom matcher DSL, support new
|
326
359
|
`notify_expectation_failures: true` option for the `match` method to
|
327
360
|
allow expectation failures to be raised as normal instead of being
|
328
|
-
converted into a `false` return value for `matches?`. (Jon Rowe, #892)
|
361
|
+
converted into a `false` return value for `matches?`. (Jon Rowe, rspec/rspec-expectations#892)
|
329
362
|
|
330
363
|
Bug Fixes:
|
331
364
|
|
332
|
-
* Allow `should` deprecation check to work on `BasicObject`s. (James Coleman, #898)
|
365
|
+
* Allow `should` deprecation check to work on `BasicObject`s. (James Coleman, rspec/rspec-expectations#898)
|
333
366
|
|
334
367
|
### 3.5.0.beta1 / 2016-02-06
|
335
368
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.4.0...v3.5.0.beta1)
|
@@ -337,14 +370,14 @@ Bug Fixes:
|
|
337
370
|
Enhancements:
|
338
371
|
|
339
372
|
* Make `match_when_negated` in custom matcher DSL support use of
|
340
|
-
expectations within the match logic. (Chris Arcand, #789)
|
373
|
+
expectations within the match logic. (Chris Arcand, rspec/rspec-expectations#789)
|
341
374
|
|
342
375
|
Bug Fixes:
|
343
376
|
|
344
377
|
* Return `true` as expected from passing negated expectations
|
345
378
|
(such as `expect("foo").not_to eq "bar"`), so they work
|
346
379
|
properly when used within a `match` or `match_when_negated`
|
347
|
-
block. (Chris Arcand, #789)
|
380
|
+
block. (Chris Arcand, rspec/rspec-expectations#789)
|
348
381
|
|
349
382
|
### 3.4.0 / 2015-11-11
|
350
383
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.3.1...v3.4.0)
|
@@ -353,22 +386,22 @@ Enhancements:
|
|
353
386
|
|
354
387
|
* Warn when `RSpec::Matchers` is included in a superclass after it has
|
355
388
|
already been included in a subclass on MRI 1.9, since that situation
|
356
|
-
can cause uses of `super` to trigger infinite recursion. (Myron Marston, #816)
|
389
|
+
can cause uses of `super` to trigger infinite recursion. (Myron Marston, rspec/rspec-expectations#816)
|
357
390
|
* Stop rescuing `NoMemoryError`, `SignalExcepetion`, `Interrupt` and
|
358
|
-
`SystemExit`. It is dangerous to interfere with these. (Myron Marston, #845)
|
391
|
+
`SystemExit`. It is dangerous to interfere with these. (Myron Marston, rspec/rspec-expectations#845)
|
359
392
|
* Add `#with_captures` to the match matcher which allows a user to specify expected
|
360
|
-
captures when matching a regex against a string. (Sam Phippen, #848)
|
393
|
+
captures when matching a regex against a string. (Sam Phippen, rspec/rspec-expectations#848)
|
361
394
|
* Always print compound failure messages in the multi-line form. Trying
|
362
|
-
to print it all on a single line didn't read very well. (Myron Marston, #859)
|
395
|
+
to print it all on a single line didn't read very well. (Myron Marston, rspec/rspec-expectations#859)
|
363
396
|
|
364
397
|
Bug Fixes:
|
365
398
|
|
366
399
|
* Fix failure message from dynamic predicate matchers when the object
|
367
400
|
does not respond to the predicate so that it is inspected rather
|
368
401
|
than relying upon its `to_s` -- that way for `nil`, `"nil"` is
|
369
|
-
printed rather than an empty string. (Myron Marston, #841)
|
402
|
+
printed rather than an empty string. (Myron Marston, rspec/rspec-expectations#841)
|
370
403
|
* Fix SystemStackError raised when diffing an Enumerable object
|
371
|
-
whose `#each` includes the object itself. (Yuji Nakayama, #857)
|
404
|
+
whose `#each` includes the object itself. (Yuji Nakayama, rspec/rspec-expectations#857)
|
372
405
|
|
373
406
|
### 3.3.1 / 2015-07-15
|
374
407
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.3.0...v3.3.1)
|
@@ -378,9 +411,9 @@ Bug Fixes:
|
|
378
411
|
* Fix `be >`, `be <`, etc so that it fails rather than allowing an
|
379
412
|
argument error to be raised when compared against an object of the
|
380
413
|
wrong type. This allows it to be used in composed matcher expressions
|
381
|
-
against heterogeneous objects. (Dennis Günnewig, #809)
|
414
|
+
against heterogeneous objects. (Dennis Günnewig, rspec/rspec-expectations#809)
|
382
415
|
* Fix `respond_to` to work properly on target objects
|
383
|
-
that redefine the `method` method. (unmanbearpig, #821)
|
416
|
+
that redefine the `method` method. (unmanbearpig, rspec/rspec-expectations#821)
|
384
417
|
|
385
418
|
### 3.3.0 / 2015-06-12
|
386
419
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.2.1...v3.3.0)
|
@@ -388,50 +421,50 @@ Bug Fixes:
|
|
388
421
|
Enhancements:
|
389
422
|
|
390
423
|
* Expose `RSpec::Matchers::EnglishPhrasing` to make it easier to write
|
391
|
-
nice failure messages in custom matchers. (Jared Beck, #736)
|
424
|
+
nice failure messages in custom matchers. (Jared Beck, rspec/rspec-expectations#736)
|
392
425
|
* Add `RSpec::Matchers::FailMatchers`, a mixin which provides
|
393
426
|
`fail`, `fail_with` and `fail_including` matchers for use in
|
394
427
|
specifying that an expectation fails for use by
|
395
|
-
extension/plugin authors. (Charlie Rudolph, #729)
|
428
|
+
extension/plugin authors. (Charlie Rudolph, rspec/rspec-expectations#729)
|
396
429
|
* Avoid loading `tempfile` (and its dependencies) unless
|
397
|
-
it is absolutely needed. (Myron Marston, #735)
|
430
|
+
it is absolutely needed. (Myron Marston, rspec/rspec-expectations#735)
|
398
431
|
* Improve failure output when attempting to use `be_true` or `be_false`.
|
399
|
-
(Tim Wade, #744)
|
432
|
+
(Tim Wade, rspec/rspec-expectations#744)
|
400
433
|
* Define `RSpec::Matchers#respond_to_missing?` so that
|
401
434
|
`RSpec::Matchers#respond_to?` and `RSpec::Matchers#method` handle
|
402
|
-
dynamic predicate matchers. (Andrei Botalov, #751)
|
435
|
+
dynamic predicate matchers. (Andrei Botalov, rspec/rspec-expectations#751)
|
403
436
|
* Use custom Time/DateTime/BigDecimal formatting for all matchers
|
404
437
|
so they are consistently represented in failure messages.
|
405
|
-
(Gavin Miller, #740)
|
438
|
+
(Gavin Miller, rspec/rspec-expectations#740)
|
406
439
|
* Add configuration to turn off warnings about matcher combinations that
|
407
|
-
may cause false positives. (Jon Rowe, #768)
|
440
|
+
may cause false positives. (Jon Rowe, rspec/rspec-expectations#768)
|
408
441
|
* Warn when using a bare `raise_error` matcher that you may be subject to
|
409
|
-
false positives. (Jon Rowe, #768)
|
442
|
+
false positives. (Jon Rowe, rspec/rspec-expectations#768)
|
410
443
|
* Warn rather than raise when using the`raise_error` matcher in negative
|
411
|
-
expectations that may be subject to false positives. (Jon Rowe, #775)
|
444
|
+
expectations that may be subject to false positives. (Jon Rowe, rspec/rspec-expectations#775)
|
412
445
|
* Improve failure message for `include(a, b, c)` so that if `a` and `b`
|
413
|
-
are included the failure message only mentions `c`. (Chris Arcand, #780)
|
446
|
+
are included the failure message only mentions `c`. (Chris Arcand, rspec/rspec-expectations#780)
|
414
447
|
* Allow `satisfy` matcher to take an optional description argument
|
415
448
|
that will be used in the `description`, `failure_message` and
|
416
449
|
`failure_message_when_negated` in place of the undescriptive
|
417
|
-
"sastify block". (Chris Arcand, #783)
|
450
|
+
"sastify block". (Chris Arcand, rspec/rspec-expectations#783)
|
418
451
|
* Add new `aggregate_failures` API that allows multiple independent
|
419
452
|
expectations to all fail and be listed in the failure output, rather
|
420
|
-
than the example aborting on the first failure. (Myron Marston, #776)
|
453
|
+
than the example aborting on the first failure. (Myron Marston, rspec/rspec-expectations#776)
|
421
454
|
* Improve `raise_error` matcher so that it can accept a matcher as a single argument
|
422
|
-
that matches the message. (Time Wade, #782)
|
455
|
+
that matches the message. (Time Wade, rspec/rspec-expectations#782)
|
423
456
|
|
424
457
|
Bug Fixes:
|
425
458
|
|
426
459
|
* Make `contain_exactly` / `match_array` work with strict test doubles
|
427
|
-
that have not defined `<=>`. (Myron Marston, #758)
|
460
|
+
that have not defined `<=>`. (Myron Marston, rspec/rspec-expectations#758)
|
428
461
|
* Fix `include` matcher so that it omits the diff when it would
|
429
462
|
confusingly highlight items that are actually included but are not
|
430
|
-
an exact match in a line-by-line diff. (Tim Wade, #763)
|
463
|
+
an exact match in a line-by-line diff. (Tim Wade, rspec/rspec-expectations#763)
|
431
464
|
* Fix `match` matcher so that it does not blow up when matching a string
|
432
465
|
or regex against another matcher (rather than a string or regex).
|
433
|
-
(Myron Marston, #772)
|
434
|
-
* Silence whitespace-only diffs. (Myron Marston, #801)
|
466
|
+
(Myron Marston, rspec/rspec-expectations#772)
|
467
|
+
* Silence whitespace-only diffs. (Myron Marston, rspec/rspec-expectations#801)
|
435
468
|
|
436
469
|
### 3.2.1 / 2015-04-06
|
437
470
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.2.0...v3.2.1)
|
@@ -439,9 +472,9 @@ Bug Fixes:
|
|
439
472
|
Bug Fixes:
|
440
473
|
|
441
474
|
* Prevent `Range`s from being enumerated when generating matcher
|
442
|
-
descriptions. (Jon Rowe, #755)
|
475
|
+
descriptions. (Jon Rowe, rspec/rspec-expectations#755)
|
443
476
|
* Ensure exception messages are compared as strings in the `raise_error`
|
444
|
-
matcher. (Jon Rowe, #755)
|
477
|
+
matcher. (Jon Rowe, rspec/rspec-expectations#755)
|
445
478
|
|
446
479
|
### 3.2.0 / 2015-02-03
|
447
480
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.1.2...v3.2.0)
|
@@ -450,25 +483,25 @@ Enhancements:
|
|
450
483
|
|
451
484
|
* Add `block_arg` method to custom matcher API, which allows you to
|
452
485
|
access the block passed to a custom matcher, if there is one.
|
453
|
-
(Mike Dalton, #645)
|
486
|
+
(Mike Dalton, rspec/rspec-expectations#645)
|
454
487
|
* Provide more detail in failure message of `yield_control` matcher.
|
455
|
-
(Jon Rowe, #650)
|
488
|
+
(Jon Rowe, rspec/rspec-expectations#650)
|
456
489
|
* Add a shorthand syntax for `chain` in the matcher DSL which assigns values
|
457
490
|
for use elsewhere, for example `chain :and_smaller_than, :small_value`
|
458
|
-
creates an `attr_reader` for `small_value` (Tom Stuart, #644)
|
491
|
+
creates an `attr_reader` for `small_value` (Tom Stuart, rspec/rspec-expectations#644)
|
459
492
|
* Provide a more helpful deprecation message when using the `should` syntax.
|
460
|
-
(Elia Schito, #663)
|
493
|
+
(Elia Schito, rspec/rspec-expectations#663)
|
461
494
|
* Provide more detail in the `have_attributes` matcher failure message.
|
462
|
-
(Jon Rowe, #668)
|
495
|
+
(Jon Rowe, rspec/rspec-expectations#668)
|
463
496
|
* Make the `have_attributes` matcher diffable.
|
464
|
-
(Jon Rowe, Alexey Fedorov, #668)
|
497
|
+
(Jon Rowe, Alexey Fedorov, rspec/rspec-expectations#668)
|
465
498
|
* Add `output(...).to_std(out|err)_from_any_process` as alternatives
|
466
499
|
to `output(...).to_std(out|err)`. The latter doesn't work when a sub
|
467
500
|
process writes to the named stream but is much faster.
|
468
|
-
(Alex Genco, #700)
|
501
|
+
(Alex Genco, rspec/rspec-expectations#700)
|
469
502
|
* Improve compound matchers (created by `and` and `or`) so that diffs
|
470
503
|
are included in failures when one or more of their matchers
|
471
|
-
are diffable. (Alexey Fedorov, #713)
|
504
|
+
are diffable. (Alexey Fedorov, rspec/rspec-expectations#713)
|
472
505
|
|
473
506
|
Bug Fixes:
|
474
507
|
|
@@ -476,17 +509,17 @@ Bug Fixes:
|
|
476
509
|
the target object if the object publicly responds to the predicate
|
477
510
|
method. This avoids a possible error that can occur if the object
|
478
511
|
raises errors from `private_methods` (which can happen with celluloid
|
479
|
-
objects). (@chapmajs, #670)
|
512
|
+
objects). (@chapmajs, rspec/rspec-expectations#670)
|
480
513
|
* Make `yield_control` (with no modifier) default to
|
481
514
|
`at_least(:once)` rather than raising a confusing error
|
482
515
|
when multiple yields are encountered.
|
483
|
-
(Myron Marston, #675)
|
516
|
+
(Myron Marston, rspec/rspec-expectations#675)
|
484
517
|
* Fix "instance variable @color not initialized" warning when using
|
485
|
-
rspec-expectations outside of an rspec-core context. (Myron Marston, #689)
|
518
|
+
rspec-expectations outside of an rspec-core context. (Myron Marston, rspec/rspec-expectations#689)
|
486
519
|
* Fix `start_with` and `end_with` to work properly when checking a
|
487
|
-
string against an array of strings. (Myron Marston, #690)
|
520
|
+
string against an array of strings. (Myron Marston, rspec/rspec-expectations#690)
|
488
521
|
* Don't use internally delegated matchers when generating descriptions
|
489
|
-
for examples without doc strings. (Myron Marston, #692)
|
522
|
+
for examples without doc strings. (Myron Marston, rspec/rspec-expectations#692)
|
490
523
|
|
491
524
|
### 3.1.2 / 2014-09-26
|
492
525
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.1.1...v3.1.2)
|
@@ -495,9 +528,9 @@ Bug Fixes:
|
|
495
528
|
|
496
529
|
* Fix `define_negated_matcher` so that matchers that support fluent
|
497
530
|
interfaces continue to be negated after you use the chained method.
|
498
|
-
(Myron Marston, #656)
|
531
|
+
(Myron Marston, rspec/rspec-expectations#656)
|
499
532
|
* Fix `define_negated_matcher` so that the matchers fail with an
|
500
|
-
appropriate failure message. (Myron Marston, #659)
|
533
|
+
appropriate failure message. (Myron Marston, rspec/rspec-expectations#659)
|
501
534
|
|
502
535
|
### 3.1.1 / 2014-09-15
|
503
536
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.1.0...v3.1.1)
|
@@ -506,7 +539,7 @@ Bug Fixes:
|
|
506
539
|
|
507
540
|
* Fix regression in `all` matcher in 3.1.0 that prevented it from
|
508
541
|
working on objects that are not `Enumerable` but do implement
|
509
|
-
`each_with_index` (such as an ActiveRecord proxy). (Jori Hardman, #647)
|
542
|
+
`each_with_index` (such as an ActiveRecord proxy). (Jori Hardman, rspec/rspec-expectations#647)
|
510
543
|
|
511
544
|
### 3.1.0 / 2014-09-04
|
512
545
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.4...v3.1.0)
|
@@ -518,26 +551,26 @@ Enhancements:
|
|
518
551
|
`Person = Struct.new(:name, :age)`
|
519
552
|
`person = Person.new("Bob", 32)`
|
520
553
|
`expect(person).to have_attributes(:name => "Bob", :age => 32)`.
|
521
|
-
(Adam Farhi, #571)
|
554
|
+
(Adam Farhi, rspec/rspec-expectations#571)
|
522
555
|
* Extended compound matcher support to block matchers, for cases like:
|
523
556
|
`expect { ... }.to change { x }.to(3).and change { y }.to(4)`. (Myron
|
524
|
-
Marston, #567)
|
557
|
+
Marston, rspec/rspec-expectations#567)
|
525
558
|
* Include chained methods in custom matcher description and failure message
|
526
559
|
when new `include_chain_clauses_in_custom_matcher_descriptions` config
|
527
|
-
option is enabled. (Dan Oved, #600)
|
560
|
+
option is enabled. (Dan Oved, rspec/rspec-expectations#600)
|
528
561
|
* Add `thrice` modifier to `yield_control` matcher as a synonym for
|
529
|
-
`exactly(3).times`. (Dennis Taylor, #615)
|
562
|
+
`exactly(3).times`. (Dennis Taylor, rspec/rspec-expectations#615)
|
530
563
|
* Add `RSpec::Matchers.define_negated_matcher`, which defines a negated
|
531
|
-
version of the named matcher. (Adam Farhi, Myron Marston, #618)
|
564
|
+
version of the named matcher. (Adam Farhi, Myron Marston, rspec/rspec-expectations#618)
|
532
565
|
* Document and support negation of `contain_exactly`/`match_array`.
|
533
|
-
(Jon Rowe, #626).
|
566
|
+
(Jon Rowe, rspec/rspec-expectations#626).
|
534
567
|
|
535
568
|
Bug Fixes:
|
536
569
|
|
537
570
|
* Rename private `LegacyMacherAdapter` constant to `LegacyMatcherAdapter`
|
538
|
-
to fix typo. (Abdelkader Boudih, #563)
|
571
|
+
to fix typo. (Abdelkader Boudih, rspec/rspec-expectations#563)
|
539
572
|
* Fix `all` matcher so that it fails properly (rather than raising a
|
540
|
-
`NoMethodError`) when matched against a non-enumerable. (Hao Su, #622)
|
573
|
+
`NoMethodError`) when matched against a non-enumerable. (Hao Su, rspec/rspec-expectations#622)
|
541
574
|
|
542
575
|
### 3.0.4 / 2014-08-14
|
543
576
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.3...v3.0.4)
|
@@ -545,12 +578,12 @@ Bug Fixes:
|
|
545
578
|
Bug Fixes:
|
546
579
|
|
547
580
|
* Fix `start_with` and `end_with` so that they work properly with
|
548
|
-
structs. (Myron Marston, #620)
|
581
|
+
structs. (Myron Marston, rspec/rspec-expectations#620)
|
549
582
|
* Fix failure message generation so that structs are printed properly
|
550
583
|
in failures. Previously failure messages would represent them as
|
551
|
-
an array. (Myron Marston, #620)
|
584
|
+
an array. (Myron Marston, rspec/rspec-expectations#620)
|
552
585
|
* Fix composable matcher support so that it does not wrongly treat
|
553
|
-
structs as arrays. (Myron Marston, #620)
|
586
|
+
structs as arrays. (Myron Marston, rspec/rspec-expectations#620)
|
554
587
|
|
555
588
|
### 3.0.3 / 2014-07-21
|
556
589
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.2...v3.0.3)
|
@@ -558,10 +591,10 @@ Bug Fixes:
|
|
558
591
|
Bug Fixes:
|
559
592
|
|
560
593
|
* Fix issue with detection of generic operator matchers so they work
|
561
|
-
correctly when undefined. (Myron Marston, #597)
|
562
|
-
* Don't inadvertently define `BasicObject` in 1.8.7. (Chris Griego, #603)
|
594
|
+
correctly when undefined. (Myron Marston, rspec/rspec-expectations#597)
|
595
|
+
* Don't inadvertently define `BasicObject` in 1.8.7. (Chris Griego, rspec/rspec-expectations#603)
|
563
596
|
* Fix `include` matcher so that it fails gracefully when matched against
|
564
|
-
an object that does not respond to `include?`. (Myron Marston, #607)
|
597
|
+
an object that does not respond to `include?`. (Myron Marston, rspec/rspec-expectations#607)
|
565
598
|
|
566
599
|
### 3.0.2 / 2014-06-19
|
567
600
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.1...v3.0.2)
|
@@ -569,12 +602,12 @@ Bug Fixes:
|
|
569
602
|
Bug Fixes:
|
570
603
|
|
571
604
|
* Fix regression in `contain_exactly` (AKA `match_array`) that caused it
|
572
|
-
to wrongly pass when the expected array was empty. (Myron Marston, #581)
|
605
|
+
to wrongly pass when the expected array was empty. (Myron Marston, rspec/rspec-expectations#581)
|
573
606
|
* Provide a better error message when you use the `change(obj, :msg)`
|
574
607
|
form of the change matcher but forget the message argument. (Alex
|
575
|
-
Sunderland, #585)
|
608
|
+
Sunderland, rspec/rspec-expectations#585)
|
576
609
|
* Make the `contain_exactly` matcher work with arrays that contain hashes in
|
577
|
-
arbitrary ordering. (Sam Phippen, #578)
|
610
|
+
arbitrary ordering. (Sam Phippen, rspec/rspec-expectations#578)
|
578
611
|
|
579
612
|
### 3.0.1 / 2014-06-12
|
580
613
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.0...v3.0.1)
|
@@ -583,8 +616,8 @@ Bug Fixes:
|
|
583
616
|
|
584
617
|
* Add a missing `require` that would cause the `respond_to` matcher to
|
585
618
|
fail when used in a project where the rest of RSpec (e.g. core and
|
586
|
-
expecatations) weren't being used. (Myron Marston, #566)
|
587
|
-
* Structs are no longer treated as arrays when diffed. (Jon Rowe, #576)
|
619
|
+
expecatations) weren't being used. (Myron Marston, rspec/rspec-expectations#566)
|
620
|
+
* Structs are no longer treated as arrays when diffed. (Jon Rowe, rspec/rspec-expectations#576)
|
588
621
|
|
589
622
|
### 3.0.0 / 2014-06-01
|
590
623
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.0.rc1...v3.0.0)
|
@@ -802,9 +835,9 @@ Bug Fixes:
|
|
802
835
|
|
803
836
|
* Fix regression in `Expectations#method_handle_for` where proxy objects
|
804
837
|
with method delegated would wrongly not return a method handle.
|
805
|
-
(Jon Rowe, #594)
|
838
|
+
(Jon Rowe, rspec/rspec-expectations#594)
|
806
839
|
* Fix issue with detection of generic operator matchers so they work
|
807
|
-
correctly when undefined. (Myron Marston, #597)
|
840
|
+
correctly when undefined. (Myron Marston, rspec/rspec-expectations#597)
|
808
841
|
|
809
842
|
### 2.99.1 / 2014-06-19
|
810
843
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.0...v2.99.1)
|
@@ -812,7 +845,7 @@ Bug Fixes:
|
|
812
845
|
Bug Fixes:
|
813
846
|
|
814
847
|
* Fix typo in custom matcher `expected` deprecation warning -- it's
|
815
|
-
`expected_as_array`, not `expected_array`. (Frederick Cheung, #562)
|
848
|
+
`expected_as_array`, not `expected_array`. (Frederick Cheung, rspec/rspec-expectations#562)
|
816
849
|
|
817
850
|
### 2.99.0 / 2014-06-01
|
818
851
|
[Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.0.rc1...v2.99.0)
|