Skip to content
Newer
Older
100644 1002 lines (776 sloc) 40.4 KB
99defad @myronmarston Add changelog for #789.
myronmarston authored
1 ### 3.5.0 Development
e06e37a @samphippen Release RSpec Expectations v3.5.0.beta1
samphippen authored
2 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.5.0.beta1...master)
3
ba6fe09 @JonRowe changelog for #898
JonRowe authored
4 Bug Fixes:
5
6 * Allow `should` deprecation check to work on `BasicObject`s. (James Coleman, #898)
7
e06e37a @samphippen Release RSpec Expectations v3.5.0.beta1
samphippen authored
8 ### 3.5.0.beta1 / 2016-02-06
9 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.4.0...v3.5.0.beta1)
99defad @myronmarston Add changelog for #789.
myronmarston authored
10
11 Enhancements:
12
13 * Make `match_when_negated` in custom matcher DSL support use of
14 expectations within the match logic. (Chris Arcand, #789)
15
16 Bug Fixes:
17
18 * Return `true` as expected from passing negated expectations
19 (such as `expect("foo").not_to eq "bar"`), so they work
20 properly when used within a `match` or `match_when_negated`
21 block. (Chris Arcand, #789)
22
98094d5 @myronmarston Update changelog for v3.4.0 [ci skip]
myronmarston authored
23 ### 3.4.0 / 2015-11-11
24 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.3.1...v3.4.0)
be2bf7d @myronmarston Move changelog entry for #809 into 3.4.0 Development section.
myronmarston authored
25
6d5562e @myronmarston Warn about MRI 1.9 `super` infinite recursion bug.
myronmarston authored
26 Enhancements:
27
28 * Warn when `RSpec::Matchers` is included in a superclass after it has
29 already been included in a subclass on MRI 1.9, since that situation
30 can cause uses of `super` to trigger infinite recursion. (Myron Marston, #816)
88e99d8 @myronmarston Be more selective about what exceptions we rescue.
myronmarston authored
31 * Stop rescuing `NoMemoryError`, `SignalExcepetion`, `Interrupt` and
32 `SystemExit`. It is dangerous to interfere with these. (Myron Marston, #845)
5dd0214 @samphippen Fix changelog entry for #848.
samphippen authored
33 * Add `#with_captures` to the
34 [match matcher](https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers/match-matcher)
35 which allows a user to specify expected captures when matching a regex
36 against a string. (Sam Phippen, #848)
88ddfd3 @myronmarston Always print compound failure messages multi-line.
myronmarston authored
37 * Always print compound failure messages in the multi-line form. Trying
38 to print it all on a single line didn't read very well. (Myron Marston, #859)
6d5562e @myronmarston Warn about MRI 1.9 `super` infinite recursion bug.
myronmarston authored
39
6d7d342 @myronmarston Improve dynamic predicate failure message for `nil`.
myronmarston authored
40 Bug Fixes:
41
42 * Fix failure message from dynamic predicate matchers when the object
43 does not respond to the predicate so that it is inspected rather
44 than relying upon it's `to_s` -- that way for `nil`, `"nil"` is
45 printed rather than an empty string. (Myron Marston, #841)
d8e7a53 @yujinakayama Fix SystemStackError raised when diffing a recursive Enumerable object
yujinakayama authored
46 * Fix SystemStackError raised when diffing an Enumerable object
47 whose `#each` includes the object itself. (Yuji Nakayama, #857)
6d7d342 @myronmarston Improve dynamic predicate failure message for `nil`.
myronmarston authored
48
7f44763 @myronmarston Forwardport 3.3.1 release notes.
myronmarston authored
49 ### 3.3.1 / 2015-07-15
50 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.3.0...v3.3.1)
51
be2bf7d @myronmarston Move changelog entry for #809 into 3.4.0 Development section.
myronmarston authored
52 Bug Fixes:
53
54 * Fix `be >`, `be <`, etc so that it fails rather than allowing an
55 argument error to be raised when compared against an object of the
56 wrong type. This allows it to be used in composed matcher expressions
57 against heterogeneous objects. (Dennis Günnewig, #809)
4ca9f4d @unmanbearpig Fix `respond_to` for targets that redefine `method`
unmanbearpig authored
58 * Fix `respond_to` to work properly on target objects
8844e09 @myronmarston Cleanup changelog a bit.
myronmarston authored
59 that redefine the `method` method. (unmanbearpig, #821)
4ca9f4d @unmanbearpig Fix `respond_to` for targets that redefine `method`
unmanbearpig authored
60
322ce10 @myronmarston Updates changelog for v3.3.0 [ci skip]
myronmarston authored
61 ### 3.3.0 / 2015-06-12
62 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.2.1...v3.3.0)
13fd25a @JonRowe changelog for #729
JonRowe authored
63
64 Enhancements:
65
f2729cc @jaredbeck Add RSpec::Matchers::EnglishPhrasing to public API
jaredbeck authored
66 * Expose `RSpec::Matchers::EnglishPhrasing` to make it easier to write
67 nice failure messages in custom matchers. (Jared Beck, #736)
734fe2e @myronmarston Improve wording of changelog entry.
myronmarston authored
68 * Add `RSpec::Matchers::FailMatchers`, a mixin which provides
69 `fail`, `fail_with` and `fail_including` matchers for use in
70 specifying that an expectation fails for use by
71 extension/plugin authors. (Charlie Rudolph, #729)
41c53db @myronmarston Changelog.
myronmarston authored
72 * Avoid loading `tempfile` (and its dependencies) unless
73 it is absolutely needed. (Myron Marston, #735)
4081467 @JonRowe changelog for #744
JonRowe authored
74 * Improve failure output when attempting to use `be_true` or `be_false`.
75 (Tim Wade, #744)
d0b0d1d @myronmarston Add changelog for #751.
myronmarston authored
76 * Define `RSpec::Matchers#respond_to_missing?` so that
77 `RSpec::Matchers#respond_to?` and `RSpec::Matchers#method` handle
78 dynamic predicate matchers. (Andrei Botalov, #751)
01f1ac5 @myronmarston Add changelog.
myronmarston authored
79 * Use custom Time/DateTime/BigDecimal formatting for all matchers
80 so they are consistently represented in failure messages.
81 (Gavin Miller, #740)
4ac75c9 @JonRowe changelog for #768
JonRowe authored
82 * Add configuration to turn off warnings about matcher combinations that
83 may cause false positives. (Jon Rowe, #768)
84 * Warn when using a bare `raise_error` matcher that you may be subject to
85 false positives. (Jon Rowe, #768)
868cb9a @JonRowe changelog for 775
JonRowe authored
86 * Warn rather than raise when using the`raise_error` matcher in negative
87 expectations that may be subject to false positives. (Jon Rowe, #775)
714c1ed @myronmarston Add changelog for #780.
myronmarston authored
88 * Improve failure message for `include(a, b, c)` so that if `a` and `b`
89 are included the failure message only mentions `c`. (Chris Arcand, #780)
0d9e3b0 @myronmarston Add changelog for #783.
myronmarston authored
90 * Allow `satisfy` matcher to take an optional description argument
91 that will be used in the `description`, `failure_message` and
92 `failure_message_when_negated` in place of the undescriptive
93 "sastify block". (Chris Arcand, #783)
0fea099 @myronmarston Add changelog [ci skip]
myronmarston authored
94 * Add new `aggregate_failures` API that allows multiple independent
95 expectations to all fail and be listed in the failure output, rather
96 than the example aborting on the first failure. (Myron Marston, #776)
54a5710 @myronmarston Changelog for #782.
myronmarston authored
97 * Improve `raise_error` matcher so that it can accept a matcher as a single argument
98 that matches the message. (Time Wade, #782)
13fd25a @JonRowe changelog for #729
JonRowe authored
99
9633da8 @myronmarston Fix `contain_exactly` to work with test doubles.
myronmarston authored
100 Bug Fixes:
101
102 * Make `contain_exactly` / `match_array` work with strict test doubles
103 that have not defined `<=>`. (Myron Marston, #758)
7308190 @myronmarston Add changelog for #763.
myronmarston authored
104 * Fix `include` matcher so that it omits the diff when it would
105 confusingly highlight items that are actually included but are not
106 an exact match in a line-by-line diff. (Tim Wade, #763)
ce78a23 @myronmarston Avoid `TypeError: can’t covert x into String/Regexp` errors.
myronmarston authored
107 * Fix `match` matcher so that it does not blow up when matching a string
108 or regex against another matcher (rather than a string or regex).
109 (Myron Marston, #772)
d214201 @myronmarston Silence diff that is just whitespace.
myronmarston authored
110 * Silence whitespace-only diffs. (Myron Marston, #801)
f0b79d1 @myronmarston Forwardport 3.2.1 release notes.
myronmarston authored
111
112 ### 3.2.1 / 2015-04-06
113 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.2.0...v3.2.1)
114
115 Bug Fixes:
116
3610e0d @JonRowe changelog for #755
JonRowe authored
117 * Prevent `Range`s from being enumerated when generating matcher
118 descriptions. (Jon Rowe, #755)
119 * Ensure exception messages are compared as strings in the `raise_error`
120 matcher. (Jon Rowe, #755)
9633da8 @myronmarston Fix `contain_exactly` to work with test doubles.
myronmarston authored
121
60153c7 @myronmarston Update changelog for v3.2.0 [ci skip]
myronmarston authored
122 ### 3.2.0 / 2015-02-03
123 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.1.2...v3.2.0)
1e501df @myronmarston Changelog for #645.
myronmarston authored
124
125 Enhancements:
126
127 * Add `block_arg` method to custom matcher API, which allows you to
128 access the block passed to a custom matcher, if there is one.
129 (Mike Dalton, #645)
15ec090 @JonRowe changelog for #650
JonRowe authored
130 * Provide more detail in failure message of `yield_control` matcher.
131 (Jon Rowe, #650)
25e7b92 @JonRowe Changelog for #644
JonRowe authored
132 * Add a shorthand syntax for `chain` in the matcher DSL which assigns values
133 for use elsewhere, for example `chain :and_smaller_than, :small_value`
134 creates an `attr_reader` for `small_value` (Tom Stuart, #644)
8b6234a @JonRowe changelog for #663
JonRowe authored
135 * Provide a more helpful deprecation message when using the `should` syntax.
136 (Elia Schito, #663)
a1ef9d7 @JonRowe changelog for #668
JonRowe authored
137 * Provide more detail in the `have_attributes` matcher failure message.
138 (Jon Rowe, #668)
681d255 @JonRowe add diffable #668 to changelog
JonRowe authored
139 * Make the `have_attributes` matcher diffable.
140 (Jon Rowe, Alexey Fedorov, #668)
7af8e39 @myronmarston Add changelog for #700.
myronmarston authored
141 * Add `output(...).to_std(out|err)_from_any_process` as alternatives
142 to `output(...).to_std(out|err)`. The latter doesn't work when a sub
143 process writes to the named stream but is much faster.
144 (Alex Genco, #700)
deac66a @myronmarston Add changelog for #713.
myronmarston authored
145 * Improve compound matchers (created by `and` and `or`) so that diffs
146 are included in failures when one or more of their matchers
147 are diffable. (Alexey Fedorov, #713)
1e501df @myronmarston Changelog for #645.
myronmarston authored
148
aa634ea @myronmarston Add changelog entry for #670.
myronmarston authored
149 Bug Fixes:
150
151 * Avoid calling `private_methods` from the `be` predicate matcher on
152 the target object if the object publicly responds to the predicate
153 method. This avoids a possible error that can occur if the object
154 raises errors from `private_methods` (which can happen with celluloid
155 objects). (@chapmajs, #670)
c76be85 @myronmarston Make `yield_control` default to `at_least(:once)`.
myronmarston authored
156 * Make `yield_control` (with no modifier) default to
157 `at_least(:once)` rather than raising a confusing error
158 when multiple yields are encountered.
159 (Myron Marston, #675)
35f132d @myronmarston Add changelog for #689.
myronmarston authored
160 * Fix "instance variable @color not initialized" warning when using
161 rspec-expectations outside of an rspec-core context. (Myron Marston, #689)
03d21ce @myronmarston Fix `(start|end)_with` when comparing a string against an array of st…
myronmarston authored
162 * Fix `start_with` and `end_with` to work properly when checking a
163 string against an array of strings. (Myron Marston, #690)
036dab4 @myronmarston Don’t use internally delegated matchers for generated descriptions.
myronmarston authored
164 * Don't use internally delegated matchers when generating descriptions
165 for examples without doc strings. (Myron Marston, #692)
aa634ea @myronmarston Add changelog entry for #670.
myronmarston authored
166
b63d3c1 @myronmarston Forwardport 3.1.2 release notes.
myronmarston authored
167 ### 3.1.2 / 2014-09-26
168 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.1.1...v3.1.2)
c11864e @myronmarston Fix `define_negated_matcher` when used with chained methods off of ma…
myronmarston authored
169
170 Bug Fixes:
171
172 * Fix `define_negated_matcher` so that matchers that support fluent
173 interfaces continue to be negated after you use the chained method.
174 (Myron Marston, #656)
84af564 @myronmarston Make `define_negated_matcher` produce an appropriate failure message.
myronmarston authored
175 * Fix `define_negated_matcher` so that the matchers fail with an
176 appropriate failure message. (Myron Marston, #659)
c11864e @myronmarston Fix `define_negated_matcher` when used with chained methods off of ma…
myronmarston authored
177
510ec5e @myronmarston Forwardport 3.1.1 release notes.
myronmarston authored
178 ### 3.1.1 / 2014-09-15
179 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.1.0...v3.1.1)
180
181 Bug Fixes:
182
183 * Fix regression in `all` matcher in 3.1.0 that prevented it from
184 working on objects that are not `Enumerable` but do implement
185 `each_with_index` (such as an ActiveRecord proxy). (Jori Hardman, #647)
186
7815685 @myronmarston 3.1.0 release.
myronmarston authored
187 ### 3.1.0 / 2014-09-04
188 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.4...v3.1.0)
2b6c987 @myronmarston Add changelog entry for #563.
myronmarston authored
189
a864c47 @myronmarston Changelog.
myronmarston authored
190 Enhancements:
191
07f5939 @myronmarston Move misplaced changelog entry.
myronmarston authored
192 * Add `have_attributes` matcher, that passes if actual's attribute
193 values match the expected attributes hash:
194 `Person = Struct.new(:name, :age)`
195 `person = Person.new("Bob", 32)`
196 `expect(person).to have_attributes(:name => "Bob", :age => 32)`.
197 (Adam Farhi, #571)
a864c47 @myronmarston Changelog.
myronmarston authored
198 * Extended compound matcher support to block matchers, for cases like:
199 `expect { ... }.to change { x }.to(3).and change { y }.to(4)`. (Myron
200 Marston, #567)
647bc39 @myronmarston Add changelog for #600.
myronmarston authored
201 * Include chained methods in custom matcher description and failure message
202 when new `include_chain_clauses_in_custom_matcher_descriptions` config
203 option is enabled. (Dan Oved, #600)
9c25a46 @myronmarston Reword changelog entry and docs a bit.
myronmarston authored
204 * Add `thrice` modifier to `yield_control` matcher as a synonym for
205 `exactly(3).times`. (Dennis Taylor, #615)
f46df80 @myronmarston Add `define_negated_matcher`
myronmarston authored
206 * Add `RSpec::Matchers.define_negated_matcher`, which defines a negated
207 version of the named matcher. (Adam Farhi, Myron Marston, #618)
0eb91c8 @JonRowe changelog for #626
JonRowe authored
208 * Document and support negation of `contain_exactly`/`match_array`.
209 (Jon Rowe, #626).
a864c47 @myronmarston Changelog.
myronmarston authored
210
6bebe13 @myronmarston Forwardport 3.0.4 release notes.
myronmarston authored
211 Bug Fixes:
212
213 * Rename private `LegacyMacherAdapter` constant to `LegacyMatcherAdapter`
214 to fix typo. (Abdelkader Boudih, #563)
215 * Fix `all` matcher so that it fails properly (rather than raising a
216 `NoMethodError`) when matched against a non-enumerable. (Hao Su, #622)
217
218 ### 3.0.4 / 2014-08-14
219 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.3...v3.0.4)
220
221 Bug Fixes:
222
223 * Fix `start_with` and `end_with` so that they work properly with
224 structs. (Myron Marston, #620)
225 * Fix failure message generation so that structs are printed properly
226 in failures. Previously failure messages would represent them as
227 an array. (Myron Marston, #620)
228 * Fix composable matcher support so that it does not wrongly treat
229 structs as arrays. (Myron Marston, #620)
230
197c287 @myronmarston Forwardport 3.0.3 release notes.
myronmarston authored
231 ### 3.0.3 / 2014-07-21
232 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.2...v3.0.3)
233
234 Bug Fixes:
235
236 * Fix issue with detection of generic operator matchers so they work
237 correctly when undefined. (Myron Marston, #597)
238 * Don't inadvertently define `BasicObject` in 1.8.7. (Chris Griego, #603)
239 * Fix `include` matcher so that it fails gracefully when matched against
240 an object that does not respond to `include?`. (Myron Marston, #607)
241
5c0bce4 @myronmarston Forwardport 3.0.2 release notes.
myronmarston authored
242 ### 3.0.2 / 2014-06-19
243 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.1...v3.0.2)
b461ee1 @myronmarston Fix regression in `contain_exactly`.
myronmarston authored
244
245 Bug Fixes:
246
247 * Fix regression in `contain_exactly` (AKA `match_array`) that caused it
248 to wrongly pass when the expected array was empty. (Myron Marston, #581)
3a66147 @myronmarston Changelog for #585.
myronmarston authored
249 * Provide a better error message when you use the `change(obj, :msg)`
250 form of the change matcher but forget the message argument. (Alex
251 Sunderland, #585)
467cd88 @samphippen Changelog entry for #578
samphippen authored
252 * Make the `contain_exactly` matcher work with arrays that contain hashes in
253 arbitrary ordering. (Sam Phippen, #578)
b461ee1 @myronmarston Fix regression in `contain_exactly`.
myronmarston authored
254
fc0a587 @myronmarston Port changelog from 3.0.1 release.
myronmarston authored
255 ### 3.0.1 / 2014-06-12
256 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.0...v3.0.1)
89bffb3 @myronmarston Add changelog for #566.
myronmarston authored
257
258 Bug Fixes:
259
260 * Add a missing `require` that would cause the `respond_to` matcher to
261 fail when used in a project where the rest of RSpec (e.g. core and
262 expecatations) weren't being used. (Myron Marston, #566)
13ac555 @JonRowe changelog for #576
JonRowe authored
263 * Structs are no longer treated as arrays when diffed. (Jon Rowe, #576)
89bffb3 @myronmarston Add changelog for #566.
myronmarston authored
264
db3e433 @myronmarston Update changelog for v3.0.0. [ci skip]
myronmarston authored
265 ### 3.0.0 / 2014-06-01
266 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.0.rc1...v3.0.0)
267
268 No code changes. Just taking it out of pre-release.
269
2b58bf3 @myronmarston Prep changelog for 3.0.0.rc1 [ci skip]
myronmarston authored
270 ### 3.0.0.rc1 / 2014-05-18
271 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.0.beta2...v3.0.0.rc1)
ea85b1b @myronmarston Prepare changelog for 3.0.0.rc1 development.
myronmarston authored
272
8b74b6f @myronmarston Add changelog entry.
myronmarston authored
273 Breaking Changes for 3.0.0:
89f7745 @myronmarston Cleanup matcher_execution_context.
myronmarston authored
274
3a7db7e @myronmarston Remove `RSpec::Matchers::Pretty#_pretty_print`.
myronmarston authored
275 * Remove `matcher_execution_context` attribute from DSL-defined
89f7745 @myronmarston Cleanup matcher_execution_context.
myronmarston authored
276 custom matchers. (Myron Marston)
3a7db7e @myronmarston Remove `RSpec::Matchers::Pretty#_pretty_print`.
myronmarston authored
277 * Remove `RSpec::Matchers::Pretty#_pretty_print`. (Myron Marston)
782330d @myronmarston Remove expected_to_sentence method.
myronmarston authored
278 * Remove `RSpec::Matchers::Pretty#expected_to_sentence`. (Myron Marston)
8b74b6f @myronmarston Add changelog entry.
myronmarston authored
279 * Rename `RSpec::Matchers::Configuration` constant to
280 `RSpec::Expectations::Configuration`. (Myron Marston)
165bf54 @JonRowe Changelog for #531
JonRowe authored
281 * Prevent `have_xyz` predicate matchers using private methods.
282 (Adrian Gonzalez)
bdc1bb5 @myronmarston Add `supports_block_expectations?` to matcher protocol.
myronmarston authored
283 * Block matchers must now implement `supports_block_expectations?`.
284 (Myron Marston)
aec5213 @myronmarston Stop supporting `require ‘rspec-expectations’`.
myronmarston authored
285 * Stop supporting `require 'rspec-expectations'`.
286 Use `require 'rspec/expectations'` instead. (Myron Marston)
89f7745 @myronmarston Cleanup matcher_execution_context.
myronmarston authored
287
4f62813 @myronmarston Don't change visibility based on if YARD is loaded.
myronmarston authored
288 Bug Fixes:
289
290 * Fix `NoMethodError` triggered by beta2 when `YARD` was loaded in
291 the test environment. (Myron Marston)
864ab97 @myronmarston Make `be_xyz` matchers support do...end blocks.
myronmarston authored
292 * Fix `be_xyz` matcher to accept a `do...end` block. (Myron Marston)
39c50b9 @myronmarston Don't blow up when generating a failure message involving stdout/stderr.
myronmarston authored
293 * Fix composable matcher failure message generation logic
294 so that it does not blow up when given `$stdout` or `$stderr`.
295 (Myron Marston)
be7877f @myronmarston Fix `change` matcher to work properly with `IO` objects.
myronmarston authored
296 * Fix `change` matcher to work properly with `IO` objects.
297 (Myron Marston)
04ab241 @myronmarston Add a changelog entry for #511.
myronmarston authored
298 * Fix `exist` matcher so that it can be used in composed matcher
299 expressions involving objects that do not implement `exist?` or
300 `exists?`. (Daniel Fone)
8bc2498 @myronmarston Clone matchers in composable matcher expressions.
myronmarston authored
301 * Fix composable matcher match logic so that it clones matchers
302 before using them in order to work properly with matchers
303 that use internal memoization based on a given `actual` value.
304 (Myron Marston)
3303f45 @myronmarston Update changelog for #520.
myronmarston authored
305 * Fix `be_xyz` and `has_xyz` predicate matchers so that they can
306 be used in composed matcher expressions involving objects that
307 do not implement the predicate method. (Daniel Fone)
4f62813 @myronmarston Don't change visibility based on if YARD is loaded.
myronmarston authored
308
db91329 @myronmarston Add missing changelog entry.
myronmarston authored
309 Enhancements:
310
311 * Document the remaining public APIs. rspec-expectations now has 100% of
312 the public API documented and will remain that way (as new undocumented
313 methods will fail the build). (Myron Marston)
1b6d3c8 @myronmarston Add changelog for #510.
myronmarston authored
314 * Improve the formatting of BigDecimal objects in `eq` matcher failure
315 messages. (Daniel Fone)
fefe69c @myronmarston Changelog for #406.
myronmarston authored
316 * Improve the failure message for `be_xyz` predicate matchers so
317 that it includes the `inspect` output of the receiver.
318 (Erik Michaels-Ober, Sam Phippen)
732ede2 @myronmarston Cleanup changelog entry.
myronmarston authored
319 * Add `all` matcher, to allow you to specify that a given matcher
320 matches all elements in a collection:
321 `expect([1, 3, 5]).to all( be_odd )`. (Adam Farhi)
0fa5e10 @JonRowe cleanup changelog for #537
JonRowe authored
322 * Add boolean aliases (`&`/`|`) for compound operators (`and`/`or`). (Adam Farhi)
bdc1bb5 @myronmarston Add `supports_block_expectations?` to matcher protocol.
myronmarston authored
323 * Give users a clear error when they wrongly use a value matcher
79582c2 @myronmarston Fail gracefully when a block matcher is not given a block.
myronmarston authored
324 in a block expectation expression (e.g. `expect { 3 }.to eq(3)`)
325 or vice versa. (Myron Marston)
db91329 @myronmarston Add missing changelog entry.
myronmarston authored
326
e295495 @myronmarston Update changelog for 3.0.0.beta2 release. [ci skip]
myronmarston authored
327 ### 3.0.0.beta2 / 2014-02-17
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
328 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.0.0.beta1...v3.0.0.beta2)
8e8f17c @myronmarston Remove deprecations for RSpec 1 APIs.
myronmarston authored
329
a4803a7 @myronmarston Changelog changes in prep for 3.0.0.beta2 release.
myronmarston authored
330 Breaking Changes for 3.0.0:
331
332 * Remove deprecated support for accessing the `RSpec` constant using
333 `Rspec` or `Spec`. (Myron Marston)
334 * Remove deprecated `RSpec::Expectations.differ=`. (Myron Marston)
335 * Remove support for deprecated `expect(...).should`. (Myron Marston)
336 * Explicitly disallow `expect { }.not_to change { }` with `by`,
337 `by_at_least`, `by_at_most` or `to`. These have never been supported
338 but did not raise explicit errors. (Myron Marston)
339 * Provide `===` rather than `==` as an alias of `matches?` for
340 all matchers. The semantics of `===` are closer to an RSpec
341 matcher than `==`. (Myron Marston)
342 * Remove deprecated `RSpec::Matchers::OperatorMatcher` constant.
343 (Myron Marston)
344 * Make `RSpec::Expectations::ExpectationNotMetError` subclass
345 `Exception` rather than `StandardError` so they can bypass
346 a bare `rescue` in end-user code (e.g. when an expectation is
347 set from within a rspec-mocks stub implementation). (Myron Marston)
348 * Remove Test::Unit and Minitest 4.x integration. (Myron Marston)
349
0cb82ff @myronmarston Update changelog.
myronmarston authored
350 Enhancements:
a048ee1 @samphippen Add a changelog entry for #368
samphippen authored
351
352 * Simplify the failure message of the `be` matcher when matching against:
353 `true`, `false` and `nil`. (Sam Phippen)
0cb82ff @myronmarston Update changelog.
myronmarston authored
354 * Update matcher protocol and custom matcher DSL to better align
355 with the newer `expect` syntax. If you want your matchers to
356 maintain compatibility with multiple versions of RSpec, you can
357 alias the new names to the old. (Myron Marston)
358 * `failure_message_for_should` => `failure_message`
359 * `failure_message_for_should_not` => `failure_message_when_negated`
360 * `match_for_should` => `match`
361 * `match_for_should_not` => `match_when_negated`
b5bec08 @myronmarston Add proper descriptions for change matcher variations.
myronmarston authored
362 * Improve generated descriptions from `change` matcher. (Myron Marston)
75487cd @myronmarston Add changelog entry.
myronmarston authored
363 * Add support for compound matcher expressions using `and` and `or`.
364 Simply chain them off of any existing matcher to create an expression
365 like `expect(alphabet).to start_with("a").and end_with("z")`.
366 (Eloy Espinaco)
6bde36e @myronmarston Add `contain_exactly` as an alternate version of `match_array`.
myronmarston authored
367 * Add `contain_exactly` as a less ambiguous version of `match_array`.
368 Note that it expects the expected array to be splatted as
369 individual args: `expect(array).to contain_exactly(1, 2)` is
370 the same as `expect(array).to match_array([1, 2])`. (Myron Marston)
ec93540 @myronmarston `contain_exactly` should work with sets and other collections, too.
myronmarston authored
371 * Update `contain_exactly`/`match_array` so that it can match against
372 other non-array collections (such as a `Set`). (Myron Marston)
3063afb @myronmarston Update changelog.
myronmarston authored
373 * Update built-in matchers so that they can accept matchers as arguments
374 to allow you to compose matchers in arbitrary ways. (Myron Marston)
375 * Add `RSpec::Matchers::Composable` mixin that can be used to make
376 a custom matcher composable as well. Note that custom matchers
377 defined via `RSpec::Matchers.define` already have this. (Myron
378 Marston)
379 * Define noun-phrase aliases for built-in matchers, which can be
380 used when creating composed matcher expressions that read better
381 and provide better failure messages. (Myron Marston)
0784071 @seuros fix typo in Changelog
seuros authored
382 * Add `RSpec::Matchers.alias_matcher` so users can define their own
b0fde19 @myronmarston Add changelog entry for `alias_matcher`.
myronmarston authored
383 matcher aliases. The `description` of the matcher will reflect the
384 alternate matcher name. (Myron Marston)
5771562 @myronmarston A few post-merge fixups.
myronmarston authored
385 * Add explicit `be_between` matcher. `be_between` has worked for a
386 long time as a dynamic predicate matcher, but the failure message
387 was suboptimal. The new matcher provides a much better failure
388 message. (Erik Michaels-Ober)
23135e6 @JonRowe changelog for #412
JonRowe authored
389 * Enhance the `be_between` matcher to allow for `inclusive` or `exclusive`
390 comparison (e.g. inclusive of min/max or exclusive of min/max).
391 (Pedro Gimenez)
7fcce6a @JonRowe changelog for #417
JonRowe authored
392 * Make failure message for `not_to be #{operator}` less confusing by
393 only saying it's confusing when comparison operators are used.
394 (Prathamesh Sonpatki)
18ebf2a @myronmarston Add Changelog for #416.
myronmarston authored
395 * Improve failure message of `eq` matcher when `Time` or `DateTime`
396 objects are used so that the full sub-second precision is included.
9b1fcc4 @myronmarston Update changelog for #430.
myronmarston authored
397 (Thomas Holmes, Jeff Wallace)
4a8bb9f @myronmarston Tweak a few things post-merge #410.
myronmarston authored
398 * Add `output` matcher for expecting that a block outputs `to_stdout`
399 or `to_stderr`. (Luca Pette, Matthias Günther)
9cf314e @myronmarston A few post-merge fixups for #429.
myronmarston authored
400 * Forward a provided block on to the `has_xyz?` method call when
401 the `have_xyz` matcher is used. (Damian Galarza)
e510288 @myronmarston Improve integration with minitest.
myronmarston authored
402 * Provide integration with Minitest 5.x. Require
403 `rspec/expectations/minitest_integration` after loading minitest
404 to use rspec-expectations with minitest. (Myron Marston)
a048ee1 @samphippen Add a changelog entry for #368
samphippen authored
405
6d14a67 @soulcutter Update changelog
soulcutter authored
406 Bug Fixes:
407
408 * Fix wrong matcher descriptions with falsey expected value (yujinakayama)
953e3b3 @myronmarston Clarify `expect { }.not_to change { }`.
myronmarston authored
409 * Fix `expect { }.not_to change { }.from(x)` so that the matcher only
410 passes if the starting value is `x`. (Tyler Rick, Myron Marston)
75d5d77 @myronmarston Add changelog for #407.
myronmarston authored
411 * Fix hash diffing, so that it colorizes properly and doesn't consider trailing
412 commas when performing the diff. (Jared Norman)
a4803a7 @myronmarston Changelog changes in prep for 3.0.0.beta2 release.
myronmarston authored
413 * Fix built-in matchers to fail normally rather than raising
414 `ArgumentError` when given an object of the wrong type to match
415 against, so that they work well in composite matcher expressions like
416 `expect([1.51, "foo"]).to include(a_string_matching(/foo/), a_value_within(0.1).of(1.5))`.
417 (Myron Marston)
6d14a67 @soulcutter Update changelog
soulcutter authored
418
0cb82ff @myronmarston Update changelog.
myronmarston authored
419 Deprecations:
420
421 * Retain support for RSpec 2 matcher protocol (e.g. for matchers
422 in 3rd party extension gems like `shoulda`), but it will print
423 a deprecation warning. (Myron Marston)
424
3d77acc @myronmarston Update changelog for 3.0.0.beta1 release [ci skip]
myronmarston authored
425 ### 3.0.0.beta1 / 2013-11-07
023297d @myronmarston Forwardport 2.99.2 release notes.
myronmarston authored
426 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.2...v3.0.0.beta1)
a01f092 @JonRowe document dropping 1.8.6 support
JonRowe authored
427
428 Breaking Changes for 3.0.0:
429
678a57c @xaviershay Consistent formatting of changelog.
xaviershay authored
430 * Remove explicit support for 1.8.6. (Jon Rowe)
a00be5b @samphippen Remove the deprecated `be_close` matcher.
samphippen authored
431 * Remove the deprecated `be_close` matcher, preferring `be_within` instead.
432 (Sam Phippen)
d71bff4 @JonRowe Make note of removed matchers that we missed.
JonRowe authored
433 * Remove the deprecated `have`, `have_at_least` and `have_at_most` matchers.
434 You can continue using those matchers through https://github.com/rspec/rspec-collection_matchers,
a29e121 @myronmarston Cleanup whitespace.
myronmarston authored
435 or you can rewrite your expectations with something like
d71bff4 @JonRowe Make note of removed matchers that we missed.
JonRowe authored
436 `expect(your_object.size).to eq(num)`. (Hugo Baraúna)
860ca42 @samphippen Rename be_true and be_false to be_truthy and be_falsey.
samphippen authored
437 * Rename `be_true` and `be_false` to `be_truthy` and `be_falsey`. (Sam Phippen)
58ade10 @samphippen Add a changelog entry for #294.
samphippen authored
438 * Make `expect { }.to_not raise_error(SomeSpecificClass, message)`,
439 `expect { }.to_not raise_error(SomeSpecificClass)` and
2160e84 @samphippen Clarify the changelog entry for #294.
samphippen authored
440 `expect { }.to_not raise_error(message)` invalid, since they are prone
441 to hiding failures. Instead, use `expect { }.to_not raise_error` (with no
442 args). (Sam Phippen)
9e05e56 @myronmarston Add changelog for recent custom matcher changes.
myronmarston authored
443 * Within `RSpec::Matchers.define` blocks, helper methods made available
444 either via `def self.helper` or `extend HelperModule` are no longer
445 available to the `match` block (or any of the others). Instead
446 `include` your helper module and define the helper method as an
447 instance method. (Myron Marston)
184be5d @myronmarston Fix typo in changelog.
myronmarston authored
448 * Force upgrading Diff::LCS for encoding compatability with diffs. (Jon Rowe)
a01f092 @JonRowe document dropping 1.8.6 support
JonRowe authored
449
d712787 @samphippen Add a changelog entry for #295.
samphippen authored
450 Enhancements:
451
678a57c @xaviershay Consistent formatting of changelog.
xaviershay authored
452 * Support `do..end` style block with `raise_error` matcher. (Yuji Nakayama)
453 * Rewrote custom matcher DSL to simplify its implementation and solve a
9e05e56 @myronmarston Add changelog for recent custom matcher changes.
myronmarston authored
454 few issues. (Myron Marston)
455 * Allow early `return` from within custom matcher DSL blocks. (Myron
456 Marston)
457 * The custom matcher DSL's `chain` can now accept a block. (Myron
458 Marston)
66d2e59 @samphippen Add a changelog entry and a cuke for
samphippen authored
459 * Support setting an expectation on a `raise_error` matcher via a chained
460 `with_message` method call. (Sam Phippen)
9e05e56 @myronmarston Add changelog for recent custom matcher changes.
myronmarston authored
461
462 Bug Fixes:
463
464 * Allow `include` and `match` matchers to be used from within a
465 DSL-defined custom matcher's `match` block. (Myron Marston)
71b4ca4 @JonRowe update changelog for encoding
JonRowe authored
466 * Correct encoding error message on diff failure (Jon Rowe)
d712787 @samphippen Add a changelog entry for #295.
samphippen authored
467
983ce37 @myronmarston Update changelog with 2.14.3 release notes.
myronmarston authored
468 Deprecations:
469
470 * Using the old `:should` syntax without explicitly configuring it is deprecated.
471 It will continue to work but will emit a deprecation warning in RSpec 3 if
472 you do not explicitly enable it. (Sam Phippen)
473
023297d @myronmarston Forwardport 2.99.2 release notes.
myronmarston authored
474 ### 2.99.2 / 2014-07-21
98a1cf6 @myronmarston Fix changelog link.
myronmarston authored
475 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.1...v2.99.2)
023297d @myronmarston Forwardport 2.99.2 release notes.
myronmarston authored
476
477 Bug Fixes:
478
479 * Fix regression in `Expectations#method_handle_for` where proxy objects
480 with method delegated would wrongly not return a method handle.
481 (Jon Rowe, #594)
482 * Fix issue with detection of generic operator matchers so they work
483 correctly when undefined. (Myron Marston, #597)
484
fe7f2a9 @myronmarston Forwardport 2.99.1 release notes.
myronmarston authored
485 ### 2.99.1 / 2014-06-19
486 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.0...v2.99.1)
487
488 Bug Fixes:
489
490 * Fix typo in custom matcher `expected` deprecation warning -- it's
491 `expected_as_array`, not `expected_array`. (Frederick Cheung, #562)
492
b24c355 @myronmarston Forwardport 2.99.0 release notes. [ci skip]
myronmarston authored
493 ### 2.99.0 / 2014-06-01
494 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.0.rc1...v2.99.0)
495
496 Enhancements:
497
498 * Special case deprecation message for `errors_on` with `rspec-rails` to be more useful.
499 (Aaron Kromer)
500
dd4b012 @myronmarston Forwardport release notes from 2.99.0.rc1 [ci skip]
myronmarston authored
501 ### 2.99.0.rc1 / 2014-05-18
502 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.0.beta2...2.99.0.rc1)
503
504 Deprecations:
505
506 * Deprecate `matcher_execution_context` attribute on DSL-defined
507 custom matchers. (Myron Marston)
508 * Deprecate `RSpec::Matchers::Pretty#_pretty_print`. (Myron Marston)
509 * Deprecate `RSpec::Matchers::Pretty#expected_to_sentence`. (Myron Marston)
510 * Deprecate `RSpec::Matchers::Configuration` in favor of
511 `RSpec::Expectations::Configuration`. (Myron Marston)
512 * Deprecate `be_xyz` predicate matcher on an object that doesn't respond to
513 `xyz?` or `xyzs?`. (Daniel Fone)
514 * Deprecate `have_xyz` matcher on an object that doesn't respond to `has_xyz?`.
515 (Daniel Fone)
516 * Deprecate `have_xyz` matcher on an object that has a private method `has_xyz?`.
517 (Jon Rowe)
518 * Issue a deprecation warning when a block expectation expression is
519 used with a matcher that doesn't explicitly support block expectations
520 via `supports_block_expectations?`. (Myron Marston)
521 * Deprecate `require 'rspec-expectations'`. Use
522 `require 'rspec/expectations'` instead. (Myron Marston)
523
4854772 @myronmarston Add 2.99.0.beta2 release notes.
myronmarston authored
524 ### 2.99.0.beta2 / 2014-02-17
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
525 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.99.0.beta1...v2.99.0.beta2)
4854772 @myronmarston Add 2.99.0.beta2 release notes.
myronmarston authored
526
527 Deprecations:
528
529 * Deprecate chaining `by`, `by_at_least`, `by_at_most` or `to` off of
530 `expect { }.not_to change { }`. The docs have always said these are
531 not supported for the negative form but now they explicitly raise
532 errors in RSpec 3. (Myron Marston)
533 * Change the semantics of `expect { }.not_to change { x }.from(y)`.
534 In RSpec 2.x, this expectation would only fail if `x` started with
535 the value of `y` and changed. If it started with a different value
536 and changed, it would pass. In RSpec 3, it will pass only if the
537 value starts at `y` and it does not change. (Myron Marston)
538 * Deprecate `matcher == value` as an alias for `matcher.matches?(value)`,
539 in favor of `matcher === value`. (Myron Marston)
540 * Deprecate `RSpec::Matchers::OperatorMatcher` in favor of
541 `RSpec::Matchers::BuiltIn::OperatorMatcher`. (Myron Marston)
542 * Deprecate auto-integration with Test::Unit and minitest.
543 Instead, include `RSpec::Matchers` in the appropriate test case
544 base class yourself. (Myron Marston)
545 * Deprecate treating `#expected` on a DSL-generated custom matcher
546 as an array when only 1 argument is passed to the matcher method.
547 In RSpec 3 it will be the single value in order to make diffs
548 work properly. (Jon Rowe)
549
e5ef7cb @myronmarston Update changelog with 2.99.0.beta1 release notes.
myronmarston authored
550 ### 2.99.0.beta1 / 2013-11-07
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
551 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.14.4...v2.99.0.beta1)
e5ef7cb @myronmarston Update changelog with 2.99.0.beta1 release notes.
myronmarston authored
552
553 Deprecations
554
555 * Deprecate `have`, `have_at_least` and `have_at_most`. You can continue using those
a29e121 @myronmarston Cleanup whitespace.
myronmarston authored
556 matchers through https://github.com/rspec/rspec-collection_matchers, or
557 you can rewrite your expectations with something like
558 `expect(your_object.size).to eq(num)`. (Hugo Baraúna)
e5ef7cb @myronmarston Update changelog with 2.99.0.beta1 release notes.
myronmarston authored
559 * Deprecate `be_xyz` predicate matcher when `xyz?` is a private method.
560 (Jon Rowe)
561 * Deprecate `be_true`/`be_false` in favour of `be_truthy`/`be_falsey`
562 (for Ruby's conditional semantics) or `be true`/`be false`
563 (for exact equality). (Sam Phippen)
564 * Deprecate calling helper methods from a custom matcher with the wrong
565 scope. (Myron Marston)
566 * `def self.foo` / `extend Helper` can be used to add macro methods
567 (e.g. methods that call the custom matcher DSL methods), but should
568 not be used to define helper methods called from within the DSL
569 blocks.
570 * `def foo` / `include Helper` is the opposite: it's for helper methods
571 callable from within a DSL block, but not for defining macros.
572 * RSpec 2.x allowed helper methods defined either way to be used for
573 either purpose, but RSpec 3.0 will not.
574
9003d2d @myronmarston Add 2.14.5 release notes.
myronmarston authored
575 ### 2.14.5 / 2014-02-01
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
576 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.14.4...v2.14.5)
9003d2d @myronmarston Add 2.14.5 release notes.
myronmarston authored
577
578 Bug fixes
579
580 * Fix wrong matcher descriptions with falsey expected value
581 (yujinakayama)
582
3e12ec5 @myronmarston Update changelog with 2.14.4 release info.
myronmarston authored
583 ### 2.14.4 / 2013-11-06
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
584 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.14.3...v2.14.4)
3e12ec5 @myronmarston Update changelog with 2.14.4 release info.
myronmarston authored
585
586 Bug fixes
415bfe2 @JonRowe changelog entry
JonRowe authored
587
678a57c @xaviershay Consistent formatting of changelog.
xaviershay authored
588 * Make the `match` matcher produce a diff output. (Jon Rowe, Ben Moss)
3e12ec5 @myronmarston Update changelog with 2.14.4 release info.
myronmarston authored
589 * Choose encoding for diff's more intelligently, and when all else fails fall
590 back to default internal encoding with replacing characters. (Jon Rowe)
415bfe2 @JonRowe changelog entry
JonRowe authored
591
983ce37 @myronmarston Update changelog with 2.14.3 release notes.
myronmarston authored
592 ### 2.14.3 / 2013-09-22
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
593 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.14.2...v2.14.3)
983ce37 @myronmarston Update changelog with 2.14.3 release notes.
myronmarston authored
594
ee170c4 @JonRowe Changelog for #313
JonRowe authored
595 Bug fixes
596
597 * Fix operator matchers (`should` syntax) when `method` is redefined on target.
598 (Brandon Turner)
62036b6 @JonRowe Merge pull request #320 from rspec/fix_diff_of_keys_in_hash
JonRowe authored
599 * Fix diffing of hashes with object based keys. (Jon Rowe)
a75c8d3 @JonRowe fix operator matcher when operator is implemented via method_missing
JonRowe authored
600 * Fix operator matchers (`should` syntax) when operator is defined via
601 `method_missing` (Jon Rowe)
ee170c4 @JonRowe Changelog for #313
JonRowe authored
602
9f1f6ed @myronmarston Update changelog with 2.14.2 release notes.
myronmarston authored
603 ### 2.14.2 / 2013-08-14
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
604 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.14.1...v2.14.2)
9f1f6ed @myronmarston Update changelog with 2.14.2 release notes.
myronmarston authored
605
606 Bug fixes
607
608 * Fix `be_<predicate>` matcher to not support operator chaining like the
609 `be` matcher does (e.g. `be == 5`). This led to some odd behaviors
610 since `be_<predicate> == anything` returned a `BeComparedTo` matcher
611 and was thus always truthy. This was a consequence of the implementation
612 (e.g. subclassing the basic `Be` matcher) and was not intended behavior.
613 (Myron Marston).
614 * Fix `change` matcher to compare using `==` in addition to `===`. This
615 is important for an expression like:
616 `expect {}.to change { a.class }.from(ClassA).to(ClassB)` because
617 `SomeClass === SomeClass` returns false. (Myron Marston)
618
096a162 @myronmarston Update changelog with 2.14.1 release notes.
myronmarston authored
619 ### 2.14.1 / 2013-08-08
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
620 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.14.0...2.14.1)
096a162 @myronmarston Update changelog with 2.14.1 release notes.
myronmarston authored
621
622 Bug fixes
623
624 * Ensure diff output uses the same encoding as the encoding of
625 the string being diff'd to prevent `Encoding::UndefinedConversionError`
626 errors (Jon Rowe).
627
4b9df44 @myronmarston Update changelog to reflect 2.14.0 release.
myronmarston authored
628 ### 2.14.0 / 2013-07-06
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
629 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.14.0.rc1...v2.14.0)
d248fd9 @alindeman Changelog for #260
alindeman authored
630
631 Bug fixes
632
633 * Values that are not matchers use `#inspect`, rather than `#description` for
634 documentation output (Andy Lindeman, Sam Phippen).
f7f6871 @samphippen Add a changelog entry for #266.
samphippen authored
635 * Make `expect(a).to be_within(x).percent_of(y)` work with negative y
636 (Katsuhiko Nishimra).
4b9df44 @myronmarston Update changelog to reflect 2.14.0 release.
myronmarston authored
637 * Make the `be_predicate` matcher work as expected used with `expect{...}.to
638 change...` (Sam Phippen).
d248fd9 @alindeman Changelog for #260
alindeman authored
639
18c9352 @myronmarston Prep changelog for 2.14.0.rc1 release. [ci skip]
myronmarston authored
640 ### 2.14.0.rc1 / 2013-05-27
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
641 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.13.0...v2.14.0.rc1)
585dddb @myronmarston Add changelog entry for #217.
myronmarston authored
642
643 Enhancements
644
18c9352 @myronmarston Prep changelog for 2.14.0.rc1 release. [ci skip]
myronmarston authored
645 * Enhance `yield_control` so that you can specify an exact or relative
585dddb @myronmarston Add changelog entry for #217.
myronmarston authored
646 number of times: `expect { }.to yield_control.exactly(3).times`,
647 `expect { }.to yield_control.at_least(2).times`, etc (Bartek
648 Borkowski).
e0d885c @samphippen Add a changelog entry for the new array differ.
samphippen authored
649 * Make the differ that is used when an expectation fails better handle arrays
650 by splitting each element of the array onto its own line. (Sam Phippen)
6cc78af @samphippen Add a changelog entry for #245.
samphippen authored
651 * Accept duck-typed strings that respond to `:to_str` as expectation messages.
652 (Toby Ovod-Everett)
585dddb @myronmarston Add changelog entry for #217.
myronmarston authored
653
cf84fea @myronmarston Changelog entry for #220.
myronmarston authored
654 Bug fixes
655
656 * Fix differ to not raise errors when dealing with differently-encoded
657 strings (Jon Rowe).
e717002 @samphippen Add changelog entry for integer be_within percent fix.
samphippen authored
658 * Fix `expect(something).to be_within(x).percent_of(y)` where x and y are both
659 integers (Sam Phippen).
20e3f24 @myronmarston Add changelog entry for #218.
myronmarston authored
660 * Fix `have` matcher to handle the fact that on ruby 2.0,
661 `Enumerator#size` may return nil (Kenta Murata).
94bcf0c @samphippen Fix raise error when the expectation target is an error instance.
samphippen authored
662 * Fix `expect { raise s }.to raise_error(s)` where s is an error instance
18c9352 @myronmarston Prep changelog for 2.14.0.rc1 release. [ci skip]
myronmarston authored
663 on ruby 2.0 (Sam Phippen).
ab227d3 @samphippen Add a changelog entry for #247.
samphippen authored
664 * Fix `expect(object).to raise_error` passing. This now warns the user and
665 fails the spec (tomykaira).
cf84fea @myronmarston Changelog entry for #220.
myronmarston authored
666
18c9352 @myronmarston Prep changelog for 2.14.0.rc1 release. [ci skip]
myronmarston authored
667 Deprecations
668
669 * Deprecate `expect { }.not_to raise_error(SpecificErrorClass)` or
670 `expect { }.not_to raise_error("some specific message")`. Using
671 these was prone to hiding failures as they would allow _any other
672 error_ to pass. (Sam Phippen and David Chelimsky)
673
4affaee @myronmarston Update changelog for release
myronmarston authored
674 ### 2.13.0 / 2013-02-23
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
675 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.12.1...v2.13.0)
a029d78 @myronmarston Fix change matcher to handle mutated strings.
myronmarston authored
676
e2d498d @myronmarston Put enhancements first to highlight them.
myronmarston authored
677 Enhancements
678
679 * Add support for percent deltas to `be_within` matcher:
680 `expect(value).to be_within(10).percent_of(expected)`
681 (Myron Marston).
682 * Add support to `include` matcher to allow it to be given a list
683 of matchers as the expecteds to match against (Luke Redpath).
684
a029d78 @myronmarston Fix change matcher to handle mutated strings.
myronmarston authored
685 Bug fixes
686
687 * Fix `change` matcher so that it dups strings in order to handle
688 mutated strings (Myron Marston).
5d1473a @myronmarston Fix `should be =~` matcher.
myronmarston authored
689 * Fix `should be =~ /some regex/` / `expect(...).to be =~ /some regex/`.
690 Previously, these either failed with a confusing `undefined method
691 matches?' for false:FalseClass` error or were no-ops that didn't
692 actually verify anything (Myron Marston).
723750f @myronmarston Update Changelog.
myronmarston authored
693 * Add compatibility for diff-lcs 1.2 and relax the version
694 constraint (Peter Goldstein).
fc4b66d @myronmarston Fix caching bugs in DSL matchers.
myronmarston authored
695 * Fix DSL-generated matchers to allow multiple instances of the
696 same matcher in the same example to have different description
697 and failure messages based on the expected value (Myron Marston).
5d3d228 @myronmarston Prevent `undefined method #split for Array` error.
myronmarston authored
698 * Prevent `undefined method #split for Array` error when dumping
699 the diff of an array of multiline strings (Myron Marston).
d33ea78 @myronmarston Add missing changelog entries.
myronmarston authored
700 * Don't blow up when comparing strings that are in an encoding
701 that is not ASCII compatible (Myron Marston).
702 * Remove confusing "Check the implementation of #==" message
703 printed for empty diffs (Myron Marston).
a029d78 @myronmarston Fix change matcher to handle mutated strings.
myronmarston authored
704
a71fe2f @myronmarston 2.12.1 release.
myronmarston authored
705 ### 2.12.1 / 2012-12-15
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
706 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.12.0...v2.12.1)
a71fe2f @myronmarston 2.12.1 release.
myronmarston authored
707
708 Bug fixes
709
710 * Improve the failure message for an expression like
711 `{}.should =~ {}`. (Myron Marston and Andy Lindeman)
712 * Provide a `match_regex` alias so that custom matchers
713 built using the matcher DSL can use it (since `match`
714 is a different method in that context).
715 (Steven Harman)
716
d353e8b @dchelimsky prep for 2.12 [ci-skip]
dchelimsky authored
717 ### 2.12.0 / 2012-11-12
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
718 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.11.3...v2.12.0)
c6da0f6 @dchelimsky changelog for 2.11.1 release
dchelimsky authored
719
067f13d @myronmarston Update changelog.
myronmarston authored
720 Enhancements
721
722 * Colorize diffs if the `--color` option is configured. (Alex Coplan)
4a919ab @myronmarston Include backtrace in errors reported by `raise_error` matcher.
myronmarston authored
723 * Include backtraces in unexpected errors handled by `raise_error`
724 matcher (Myron Marston)
f4f2a29 @myronmarston Update changelog.
myronmarston authored
725 * Print a warning when users accidentally pass a non-string argument
726 as an expectation message (Sam Phippen)
e2a9e3f @samphippen Make the error message more useful when using match_array
samphippen authored
727 * `=~` and `match_array` matchers output a more useful error message when
728 the actual value is not an array (or an object that responds to `#to_ary`)
729 (Sam Phippen)
067f13d @myronmarston Update changelog.
myronmarston authored
730
04eb38d @samphippen Make the include matcher require the key to exist in the hash.
samphippen authored
731 Bug fixes
732
733 * Fix `include` matcher so that `expect({}).to include(:a => nil)`
734 fails as it should (Sam Phippen).
83d9cd2 @myronmarston Update changelog.
myronmarston authored
735 * Fix `be_an_instance_of` matcher so that `Class#to_s` is used in the
736 description rather than `Class#inspect`, since some classes (like
737 `ActiveRecord::Base`) define a long, verbose `#inspect`.
738 (Tom Stuart)
04eb38d @samphippen Make the include matcher require the key to exist in the hash.
samphippen authored
739
cf6cf5d @myronmarston Add 2.11.3 release info.
myronmarston authored
740 ### 2.11.3 / 2012-09-04
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
741 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.11.2...v2.11.3)
cf6cf5d @myronmarston Add 2.11.3 release info.
myronmarston authored
742
b89b8c5 @myronmarston Fix and deprecate `expect { }.should` syntax.
myronmarston authored
743 Bug fixes
744
745 * Fix (and deprecate) `expect { }.should` syntax so that it works even
746 though it was never a documented or intended syntax. It worked as a
747 consequence of the implementation of `expect` in RSpec 2.10 and
748 earlier. (Myron Marston)
cfaf6b5 @myronmarston Fix typo.
myronmarston authored
749 * Ensure #== is defined on built in matchers so that they can be composed.
016aece @myronmarston Add missing changelog entry I forgot to add.
myronmarston authored
750 For example:
751
752 expect {
753 user.emailed!
754 }.to change { user.last_emailed_at }.to be_within(1.second).of(Time.zone.now)
b89b8c5 @myronmarston Fix and deprecate `expect { }.should` syntax.
myronmarston authored
755
c897a47 @myronmarston Cherry-pick 2.11.2 release stuff from 2-11-maint branch.
myronmarston authored
756 ### 2.11.2 / 2012-07-25
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
757 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.11.1...v2.11.2)
c897a47 @myronmarston Cherry-pick 2.11.2 release stuff from 2-11-maint branch.
myronmarston authored
758
147f710 @myronmarston Add change log entry for #160.
myronmarston authored
759 Bug fixes
760
761 * Define `should` and `should_not` on `Object` rather than `BasicObject`
762 on MacRuby. On MacRuby, `BasicObject` is defined but is not the root
763 of the object hierarchy. (Gabriel Gilder)
764
024002c @dchelimsky move post-2.11.1 enhancements in changelog
dchelimsky authored
765 ### 2.11.1 / 2012-07-08
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
766 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.11.0...v2.11.1)
024002c @dchelimsky move post-2.11.1 enhancements in changelog
dchelimsky authored
767
147f710 @myronmarston Add change log entry for #160.
myronmarston authored
768 Bug fixes
c6da0f6 @dchelimsky changelog for 2.11.1 release
dchelimsky authored
769
770 * Constrain `actual` in `be_within` matcher to values that respond to `-` instead
771 of requiring a specific type.
772 * `Time`, for example, is a legit alternative.
773
45161a7 @dchelimsky bump to 2.11.0
dchelimsky authored
774 ### 2.11.0 / 2012-07-07
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
775 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.10.0...v2.11.0)
605a520 @justinko changelog
justinko authored
776
f9574db @myronmarston Update changelog.
myronmarston authored
777 Enhancements
778
779 * Expand `expect` syntax so that it supports expections on bare values
780 in addition to blocks (Myron Marston).
9793323 @myronmarston More changelog updates.
myronmarston authored
781 * Add configuration options to control available expectation syntaxes
782 (Myron Marston):
783 * `RSpec.configuration.expect_with(:rspec) { |c| c.syntax = :expect }`
784 * `RSpec.configuration.expect_with(:rspec) { |c| c.syntax = :should }`
785 * `RSpec.configuration.expect_with(:rspec) { |c| c.syntax = [:should, :expect] }`
6a8c932 @myronmarston Update changelog.
myronmarston authored
786 * `RSpec.configuration.add_should_and_should_not_to Delegator`
f9574db @myronmarston Update changelog.
myronmarston authored
787
605a520 @justinko changelog
justinko authored
788 Bug fixes
789
790 * Allow only `Numeric` values to be the "actual" in the `be_within` matcher.
791 This prevents confusing error messages. (Su Zhang @zhangsu)
6a8c932 @myronmarston Update changelog.
myronmarston authored
792 * Define `should` and `should_not` on `BasicObject` rather than `Kernel`
793 on 1.9. This makes `should` and `should_not` work properly with
794 `BasicObject`-subclassed proxy objects like `Delegator`. (Myron
795 Marston)
605a520 @justinko changelog
justinko authored
796
77e1a09 @dchelimsky update changelog for 2.10 release
dchelimsky authored
797 ### 2.10.0 / 2012-05-03
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
798 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.9.1...v2.10.0)
2cfed80 @dchelimsky fix changelog
dchelimsky authored
799
2e0cdbc @dchelimsky Change start_with and end_with matchers to take varargs.
dchelimsky authored
800 Enhancements
801
802 * Add new `start_with` and `end_with` matchers (Jeremy Wadsack)
f9574db @myronmarston Update changelog.
myronmarston authored
803 * Add new matchers for specifying yields (Myron Marston):
20c7a3c @dchelimsky Fix Changelog formatting [ci skip]
dchelimsky authored
804 * `expect {...}.to yield_control`
805 * `expect {...}.to yield_with_args(1, 2, 3)`
806 * `expect {...}.to yield_with_no_args`
807 * `expect {...}.to yield_successive_args(1, 2, 3)`
f93ce4c @dchelimsky Changelog [ci skip]
dchelimsky authored
808 * `match_unless_raises` takes multiple exception args
2e0cdbc @dchelimsky Change start_with and end_with matchers to take varargs.
dchelimsky authored
809
2cfed80 @dchelimsky fix changelog
dchelimsky authored
810 Bug fixes
811
812 * Fix `be_within` matcher to be inclusive of delta.
780d4c2 @dchelimsky Changlog for #140
dchelimsky authored
813 * Fix message-specific specs to pass on Rubinius (John Firebaugh)
2cfed80 @dchelimsky fix changelog
dchelimsky authored
814
f31ae96 @dchelimsky bump to 2.9.1
dchelimsky authored
815 ### 2.9.1 / 2012-04-03
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
816 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.9.0...v2.9.1)
e12a2d9 @justinko Provide a helpful message if the diff between two objects is empty. F…
justinko authored
817
818 Bug fixes
819
820 * Provide a helpful message if the diff between two objects is empty.
ca5cc09 @dchelimsky Changelog for #128
dchelimsky authored
821 * Fix bug diffing single strings with multiline strings.
8f822b0 @dchelimsky changelog for #126
dchelimsky authored
822 * Fix for error with using custom matchers inside other custom matchers
823 (mirasrael)
ca5cc09 @dchelimsky Changelog for #128
dchelimsky authored
824 * Fix using execution context methods in nested DSL matchers (mirasrael)
e12a2d9 @justinko Provide a helpful message if the diff between two objects is empty. F…
justinko authored
825
fb77fca @dchelimsky bump to 2.9.0
dchelimsky authored
826 ### 2.9.0 / 2012-03-17
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
827 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.8.0...v2.9.0)
3d89aec @dchelimsky changelog for #103
dchelimsky authored
828
867260b @dchelimsky Changelog for #105 [ci skip]
dchelimsky authored
829 Enhancements
830
831 * Move built-in matcher classes to RSpec::Matchers::BuiltIn to reduce pollution
832 of RSpec::Matchers (which is included in every example).
833 * Autoload files with matcher classes to improve load time.
834
3d89aec @dchelimsky changelog for #103
dchelimsky authored
835 Bug fixes
836
0492d87 @dchelimsky formatting tweaks in the changelog
dchelimsky authored
837 * Align `respond_to?` and `method_missing` in DSL-defined matchers.
f4efada @dchelimsky Clear out user-defined instance variables between invocations of DSL-…
dchelimsky authored
838 * Clear out user-defined instance variables between invocations of DSL-defined
839 matchers.
65d3c4d @dchelimsky Dup the instance of a DSL generated matcher so its state is not changed
dchelimsky authored
840 * Dup the instance of a DSL generated matcher so its state is not changed by
841 subsequent invocations.
503ed29 @dchelimsky Changlog for #115
dchelimsky authored
842 * Treat expected args consistently across positive and negative expectations
843 (thanks to Ralf Kistner for the heads up)
3d89aec @dchelimsky changelog for #103
dchelimsky authored
844
04e55a8 @dchelimsky bump to 2.8.0
dchelimsky authored
845 ### 2.8.0 / 2012-01-04
6db8a2a @dchelimsky Changelog for last merge
dchelimsky authored
846
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
847 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.8.0.rc2...v2.8.0)
6db8a2a @dchelimsky Changelog for last merge
dchelimsky authored
848
849 Enhancements
850
851 * Better diff output for Hash (Philippe Creux)
b525e69 @dchelimsky Changelog for #102 [ci skip]
dchelimsky authored
852 * Eliminate Ruby warnings (Olek Janiszewski)
6db8a2a @dchelimsky Changelog for last merge
dchelimsky authored
853
28ca577 @dchelimsky prep for 2.8.0.rc2
dchelimsky authored
854 ### 2.8.0.rc2 / 2011-12-19
855
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
856 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.8.0.rc1...v2.8.0.rc2)
28ca577 @dchelimsky prep for 2.8.0.rc2
dchelimsky authored
857
858 No changes for this release. Just releasing with the other rspec gems.
859
b53e358 @dchelimsky changelog
dchelimsky authored
860 ### 2.8.0.rc1 / 2011-11-06
a4f0fb5 @dchelimsky changelog
dchelimsky authored
861
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
862 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.7.0...v2.8.0.rc1)
a4f0fb5 @dchelimsky changelog
dchelimsky authored
863
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
864 Enhancements
865
866 * Use classes for the built-in matchers (they're faster).
867 * Eliminate Ruby warnings (Matijs van Zuijlen)
a4f0fb5 @dchelimsky changelog
dchelimsky authored
868
32f2439 @dchelimsky update changelog for 2.7.0 release
dchelimsky authored
869 ### 2.7.0 / 2011-10-16
b4d38b4 @dchelimsky fix revisionist history
dchelimsky authored
870
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
871 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.6.0...v2.7.0)
b4d38b4 @dchelimsky fix revisionist history
dchelimsky authored
872
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
873 Enhancements
874
875 * `HaveMatcher` converts argument using `to_i` (Alex Bepple & Pat Maddox)
876 * Improved failure message for the `have_xxx` matcher (Myron Marston)
877 * `HaveMatcher` supports `count` (Matthew Bellantoni)
878 * Change matcher dups `Enumerable` before the action, supporting custom
879 `Enumerable` types like `CollectionProxy` in Rails (David Chelimsky)
b4d38b4 @dchelimsky fix revisionist history
dchelimsky authored
880
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
881 Bug fixes
882
883 * Fix typo in `have(n).xyz` documentation (Jean Boussier)
884 * fix `safe_sort` for ruby 1.9.2 (`Kernel` now defines `<=>` for Object) (Peter
885 van Hardenberg)
1b5edc5 @dchelimsky changelog
dchelimsky authored
886
fad075c @dchelimsky prep for 2.6.0
dchelimsky authored
887 ### 2.6.0 / 2011-05-12
ac3c317 @dchelimsky prep for 2.6.0.rc5
dchelimsky authored
888
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
889 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.5.0...v2.6.0)
8813963 @dchelimsky changelog
dchelimsky authored
890
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
891 Enhancements
892
893 * `change` matcher accepts regexps (Robert Davis)
894 * better descriptions for `have_xxx` matchers (Magnus Bergmark)
895 * `range.should cover(*values)` (Anders Furseth)
e14e87f @dchelimsky Changlog
dchelimsky authored
896
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
897 Bug fixes
898
899 * Removed non-ascii characters that were choking rcov (Geoffrey Byers)
900 * change matcher dups arrays and hashes so their before/after states can be
901 compared correctly.
902 * Fix the order of inclusion of RSpec::Matchers in Test::Unit::TestCase and
903 MiniTest::Unit::TestCase to prevent a SystemStackError (Myron Marston)
8813963 @dchelimsky changelog
dchelimsky authored
904
3e4a46f @dchelimsky prep for 2.5 release
dchelimsky authored
905 ### 2.5.0 / 2011-02-05
f859a68 @dchelimsky add beginnings of History
dchelimsky authored
906
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
907 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.4.0...v2.5.0)
68fff16 @dchelimsky docs/changelog
dchelimsky authored
908
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
909 Enhancements
910
911 * `should exist` works with `exist?` or `exists?` (Myron Marston)
912 * `expect { ... }.not_to do_something` (in addition to `to_not`)
68fff16 @dchelimsky docs/changelog
dchelimsky authored
913
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
914 Documentation
915
916 * improved docs for raise_error matcher (James Almond)
f5ddd17 @dchelimsky Additional improvements to raise_error matcher docs.
dchelimsky authored
917
68f857b @dchelimsky prep for 2.4.0 release
dchelimsky authored
918 ### 2.4.0 / 2011-01-02
9059239 @dchelimsky more improvments to RDoc for change matcher
dchelimsky authored
919
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
920 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.3.0...v2.4.0)
68f857b @dchelimsky prep for 2.4.0 release
dchelimsky authored
921
922 No functional changes in this release, which was made to align with the
923 rspec-core-2.4.0 release.
9059239 @dchelimsky more improvments to RDoc for change matcher
dchelimsky authored
924
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
925 Enhancements
926
927 * improved RDoc for change matcher (Jo Liss)
9059239 @dchelimsky more improvments to RDoc for change matcher
dchelimsky authored
928
94a5730 @dchelimsky prep for 2.3.0 release
dchelimsky authored
929 ### 2.3.0 / 2010-12-12
1bcd0bc @dchelimsky history
dchelimsky authored
930
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
931 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.2.1...v2.3.0)
1bcd0bc @dchelimsky history
dchelimsky authored
932
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
933 Enhancements
934
935 * diff strings when include matcher fails (Mike Sassak)
1bcd0bc @dchelimsky history
dchelimsky authored
936
16ca752 @dchelimsky prep for 2.2 release
dchelimsky authored
937 ### 2.2.0 / 2010-11-28
938
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
939 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.1.0...v2.2.0)
16ca752 @dchelimsky prep for 2.2 release
dchelimsky authored
940
a1ef6b7 @dchelimsky bump to 2.1.0
dchelimsky authored
941 ### 2.1.0 / 2010-11-07
acbfcbe @dchelimsky history
dchelimsky authored
942
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
943 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.0.1...v2.1.0)
acbfcbe @dchelimsky history
dchelimsky authored
944
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
945 Enhancements
946
947 * `be_within(delta).of(expected)` matcher (Myron Marston)
948 * Lots of new Cucumber features (Myron Marston)
949 * Raise error if you try `should != expected` on Ruby-1.9 (Myron Marston)
950 * Improved failure messages from `throw_symbol` (Myron Marston)
acbfcbe @dchelimsky history
dchelimsky authored
951
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
952 Bug fixes
953
954 * Eliminate hard dependency on `RSpec::Core` (Myron Marston)
955 * `have_matcher` - use pluralize only when ActiveSupport inflections are indeed
956 defined (Josep M Bach)
957 * throw_symbol matcher no longer swallows exceptions (Myron Marston)
958 * fix matcher chaining to avoid name collisions (Myron Marston)
acbfcbe @dchelimsky history
dchelimsky authored
959
f532c20 @dchelimsky prep for 2.0.0
dchelimsky authored
960 ### 2.0.0 / 2010-10-10
6967fd6 @dchelimsky history
dchelimsky authored
961
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
962 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.0.0.rc...v2.0.0)
6967fd6 @dchelimsky history
dchelimsky authored
963
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
964 Enhancements
965
966 * Add match_for_should_not method to matcher DSL (Myron Marston)
0d69b6f @dchelimsky history
dchelimsky authored
967
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
968 Bug fixes
969
970 * `respond_to` matcher works correctly with `should_not` with multiple methods
971 (Myron Marston)
972 * `include` matcher works correctly with `should_not` with multiple values
973 (Myron Marston)
6967fd6 @dchelimsky history
dchelimsky authored
974
add3597 @dchelimsky update history
dchelimsky authored
975 ### 2.0.0.rc / 2010-10-05
de19d98 @dchelimsky update history
dchelimsky authored
976
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
977 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.0.0.beta.22...v2.0.0.rc)
de19d98 @dchelimsky update history
dchelimsky authored
978
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
979 Enhancements
980
981 * `require 'rspec/expectations'` in a T::U or MiniUnit suite (Josep M. Bach)
b3faf00 @dchelimsky update history
dchelimsky authored
982
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
983 Bug fixes
984
985 * change by 0 passes/fails correctly (Len Smith)
986 * Add description to satisfy matcher
de19d98 @dchelimsky update history
dchelimsky authored
987
51f64b1 @dchelimsky adjust history for beta.22 release
dchelimsky authored
988 ### 2.0.0.beta.22 / 2010-09-12
f859a68 @dchelimsky add beginnings of History
dchelimsky authored
989
3174d75 @myronmarston "full changelog" => "Full Changelog"
myronmarston authored
990 [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v2.0.0.beta.20...v2.0.0.beta.22)
f859a68 @dchelimsky add beginnings of History
dchelimsky authored
991
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
992 Enhancements
993
994 * diffing improvements
f859a68 @dchelimsky add beginnings of History
dchelimsky authored
995 * diff multiline strings
996 * don't diff single line strings
997 * don't diff numbers (silly)
998 * diff regexp + multiline string
999
3a931ab @dchelimsky fix changelog formatting
dchelimsky authored
1000 Bug fixes
1001 * `should[_not]` change now handles boolean values correctly
Something went wrong with that request. Please try again.