rspec-expectations 3.8.1 → 3.8.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 5737c19409b8e70dee4183a783d6d0e9c45154c6
4
- data.tar.gz: 56dbd188a758b2d09d544f5f77038c563d05f206
2
+ SHA256:
3
+ metadata.gz: d1f0c43e7a6933605f4b96eb0a5545bd5e1b03a2b2de4471edada5000f3c5c37
4
+ data.tar.gz: 62b85e7625d066114174dfaa586dbb2cb419aa0bc470b68918c2524b841f8762
5
5
  SHA512:
6
- metadata.gz: 1af8946afaf9d3ea6e02ac7a2af209766fd31244b87d2f8dbc210f356b72e125d5c5e5e78b6b190991ce1652158502b93eb9ec75bfcfe9da605bdb269a9639ba
7
- data.tar.gz: b0314509df480db80384b8bed96cb0d478e7518a824c502fe8828787b39b4e794afbd6fa64885ebcf36a10c22b881b824c773527a8a5a673e175230ed8a77cee
6
+ metadata.gz: 5ba237ec4317b7af0780f5e929e10da26b501f76a23cb807684498a21118ef0f72598c1ded7ee0436a8a29f97ea16a0d4f887c7b345b22302f5b8ef50c660beb
7
+ data.tar.gz: 4138b8b208b668216660d55f5634440e8240c4a36f15489fc3e1e6093d4a8530fc419d9f958ea4526ac63e7e9e2d589c7716a21832d257adac823486d5dfae77
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -1,3 +1,49 @@
1
+ ### 3.8.6 / 2019-10-07
2
+
3
+ Bug Fixes:
4
+
5
+ * Revert #1125 due to the change being incompatible with our semantic versioning
6
+ policy.
7
+
8
+ ### 3.8.5 / 2019-10-02
9
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.4...v3.8.5)
10
+
11
+ Bug Fixes:
12
+
13
+ * Prevent unsupported implicit block expectation syntax from being used.
14
+ (Phil Pirozhkov, #1125)
15
+
16
+ ### 3.8.4 / 2019-06-10
17
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.3...v3.8.4)
18
+
19
+ Bug Fixes:
20
+
21
+ * Prevent false negatives when checking objects for the methods required to run the
22
+ the `be_an_instance_of` and `be_kind_of` matchers. (Nazar Matus, #1112)
23
+
24
+ ### 3.8.3 / 2019-04-20
25
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.2...v3.8.3)
26
+
27
+ Bug Fixes:
28
+
29
+ * Prevent composed `all` matchers from leaking into their siblings leading to duplicate
30
+ failures. (Jamie English, #1086)
31
+ * Prevent objects which change their hash on comparison from failing change checks.
32
+ (Phil Pirozhkov, #1110)
33
+ * Issue an `ArgumentError` rather than a `NoMethodError` when `be_an_instance_of` and
34
+ `be_kind_of` matchers encounter objects not supporting those methods.
35
+ (Taichi Ishitani, #1107)
36
+
37
+ ### 3.8.2 / 2018-10-09
38
+ [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.1...v3.8.2)
39
+
40
+ Bug Fixes:
41
+
42
+ * Change `include` matcher to rely on a `respond_to?(:include?)` check rather than a direct
43
+ Hash comparison before calling `to_hash` to convert to a hash. (Jordan Owens, #1073)
44
+ * Prevent unexpected call stack jumps from causing an obscure error (`IndexError`), and
45
+ replace that error with a proper informative message. (Jon Rowe, #1076)
46
+
1
47
  ### 3.8.1 / 2018-08-06
2
48
  [Full Changelog](http://github.com/rspec/rspec-expectations/compare/v3.8.0...v3.8.1)
3
49
 
@@ -2,7 +2,7 @@ module RSpec
2
2
  module Expectations
3
3
  # @private
4
4
  module Version
5
- STRING = '3.8.1'
5
+ STRING = '3.8.6'
6
6
  end
7
7
  end
8
8
  end
@@ -266,9 +266,9 @@ module RSpec
266
266
  # @example
267
267
  # expect(actual).to eq(expected)
268
268
  # expect(actual).not_to eq(expected)
269
- # @return [ExpectationTarget]
270
- # @see ExpectationTarget#to
271
- # @see ExpectationTarget#not_to
269
+ # @return [Expectations::ExpectationTarget]
270
+ # @see Expectations::ExpectationTarget#to
271
+ # @see Expectations::ExpectationTarget#not_to
272
272
 
273
273
  # Allows multiple expectations in the provided block to fail, and then
274
274
  # aggregates them into a single exception, rather than aborting on the
@@ -73,6 +73,7 @@ module RSpec
73
73
 
74
74
  def initialize_copy(other)
75
75
  @matcher = @matcher.clone
76
+ @failed_objects = @failed_objects.clone
76
77
  super
77
78
  end
78
79
 
@@ -14,7 +14,11 @@ module RSpec
14
14
  private
15
15
 
16
16
  def match(expected, actual)
17
- actual.instance_of? expected
17
+ actual.instance_of?(expected)
18
+ rescue NoMethodError
19
+ raise ::ArgumentError, "The #{matcher_name} matcher requires that " \
20
+ "the actual object responds to #instance_of? method " \
21
+ "but a `NoMethodError` was encountered instead."
18
22
  end
19
23
  end
20
24
  end
@@ -8,7 +8,11 @@ module RSpec
8
8
  private
9
9
 
10
10
  def match(expected, actual)
11
- actual.kind_of? expected
11
+ actual.kind_of?(expected)
12
+ rescue NoMethodError
13
+ raise ::ArgumentError, "The #{matcher_name} matcher requires that " \
14
+ "the actual object responds to #kind_of? method " \
15
+ "but a `NoMethodError` was encountered instead."
12
16
  end
13
17
  end
14
18
  end
@@ -373,6 +373,7 @@ module RSpec
373
373
  event_proc.call
374
374
 
375
375
  @actual_after = evaluate_value_proc
376
+ @actual_hash = @actual_after.hash
376
377
  true
377
378
  end
378
379
 
@@ -387,8 +388,9 @@ module RSpec
387
388
  #
388
389
  # Note that it is not sufficient to only check the hashes; it is
389
390
  # possible for two values to be unequal (and of different classes)
390
- # but to return the same hash value.
391
- @actual_before != @actual_after || @before_hash != @actual_after.hash
391
+ # but to return the same hash value. Also, some objects may change
392
+ # their hash after being compared with `==`/`!=`.
393
+ @actual_before != @actual_after || @before_hash != @actual_hash
392
394
  end
393
395
 
394
396
  def actual_delta
@@ -141,7 +141,7 @@ module RSpec
141
141
  end
142
142
 
143
143
  def convert_to_hash?(obj)
144
- !(::Hash === obj) && obj.respond_to?(:to_hash)
144
+ !obj.respond_to?(:include?) && obj.respond_to?(:to_hash)
145
145
  end
146
146
  end
147
147
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-expectations
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.1
4
+ version: 3.8.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Baker
@@ -45,7 +45,7 @@ cert_chain:
45
45
  ZsVDj6a7lH3cNqtWXZxrb2wO38qV5AkYj8SQK7Hj3/Yui9myUX3crr+PdetazSqQ
46
46
  F3MdtaDehhjC
47
47
  -----END CERTIFICATE-----
48
- date: 2018-08-07 00:00:00.000000000 Z
48
+ date: 2019-10-07 00:00:00.000000000 Z
49
49
  dependencies:
50
50
  - !ruby/object:Gem::Dependency
51
51
  name: rspec-support
@@ -82,19 +82,19 @@ dependencies:
82
82
  - !ruby/object:Gem::Version
83
83
  version: '2.0'
84
84
  - !ruby/object:Gem::Dependency
85
- name: rake
85
+ name: aruba
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
88
  - - "~>"
89
89
  - !ruby/object:Gem::Version
90
- version: 10.0.0
90
+ version: 0.14.10
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
95
  - - "~>"
96
96
  - !ruby/object:Gem::Version
97
- version: 10.0.0
97
+ version: 0.14.10
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: cucumber
100
100
  requirement: !ruby/object:Gem::Requirement
@@ -109,20 +109,6 @@ dependencies:
109
109
  - - "~>"
110
110
  - !ruby/object:Gem::Version
111
111
  version: '1.3'
112
- - !ruby/object:Gem::Dependency
113
- name: aruba
114
- requirement: !ruby/object:Gem::Requirement
115
- requirements:
116
- - - "~>"
117
- - !ruby/object:Gem::Version
118
- version: 0.6.2
119
- type: :development
120
- prerelease: false
121
- version_requirements: !ruby/object:Gem::Requirement
122
- requirements:
123
- - - "~>"
124
- - !ruby/object:Gem::Version
125
- version: 0.6.2
126
112
  - !ruby/object:Gem::Dependency
127
113
  name: minitest
128
114
  requirement: !ruby/object:Gem::Requirement
@@ -200,7 +186,12 @@ files:
200
186
  homepage: https://github.com/rspec/rspec-expectations
201
187
  licenses:
202
188
  - MIT
203
- metadata: {}
189
+ metadata:
190
+ bug_tracker_uri: https://github.com/rspec/rspec-expectations/issues
191
+ changelog_uri: https://github.com/rspec/rspec-expectations/blob/v3.8.6/Changelog.md
192
+ documentation_uri: https://rspec.info/documentation/
193
+ mailing_list_uri: https://groups.google.com/forum/#!forum/rspec
194
+ source_code_uri: https://github.com/rspec/rspec-expectations
204
195
  post_install_message:
205
196
  rdoc_options:
206
197
  - "--charset=UTF-8"
@@ -217,9 +208,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
217
208
  - !ruby/object:Gem::Version
218
209
  version: '0'
219
210
  requirements: []
220
- rubyforge_project:
221
- rubygems_version: 2.6.13
211
+ rubygems_version: 3.0.6
222
212
  signing_key:
223
213
  specification_version: 4
224
- summary: rspec-expectations-3.8.1
214
+ summary: rspec-expectations-3.8.6
225
215
  test_files: []
metadata.gz.sig CHANGED
Binary file