rspec-expectations 2.0.0.beta.8 → 2.0.0.beta.9
Sign up to get free protection for your applications and to get access to all the features.
- data/README.markdown +1 -1
- data/Rakefile +8 -7
- data/Upgrade.markdown +6 -6
- data/VERSION +1 -1
- data/features/expectations/customized_message.feature +1 -1
- data/features/expectations/implicit_docstrings.feature +2 -2
- data/features/matchers/access_running_example.feature +5 -5
- data/features/matchers/define_diffable_matcher.feature +2 -2
- data/features/matchers/define_matcher.feature +14 -14
- data/features/matchers/define_matcher_outside_rspec.feature +2 -2
- data/features/matchers/define_matcher_with_fluent_interface.feature +2 -2
- data/features/matchers/expect_change.feature +2 -2
- data/features/matchers/expect_error.feature +2 -2
- data/lib/rspec/expectations.rb +7 -5
- data/lib/rspec/expectations/backward_compatibility.rb +16 -0
- data/lib/rspec/expectations/differ.rb +58 -0
- data/lib/rspec/expectations/errors.rb +1 -1
- data/lib/rspec/expectations/extensions/kernel.rb +4 -4
- data/lib/rspec/expectations/extensions/rspec/core/example_group.rb +1 -1
- data/lib/rspec/expectations/fail_with.rb +6 -4
- data/lib/rspec/expectations/handler.rb +11 -11
- data/lib/rspec/expectations/version.rb +1 -1
- data/lib/rspec/matchers.rb +7 -8
- data/lib/rspec/matchers/be.rb +6 -6
- data/lib/rspec/matchers/be_close.rb +1 -1
- data/lib/rspec/matchers/be_instance_of.rb +1 -1
- data/lib/rspec/matchers/be_kind_of.rb +1 -1
- data/lib/rspec/matchers/change.rb +1 -1
- data/lib/rspec/matchers/compatibility.rb +2 -2
- data/lib/rspec/matchers/dsl.rb +4 -4
- data/lib/rspec/matchers/eq.rb +1 -1
- data/lib/rspec/matchers/eql.rb +1 -1
- data/lib/rspec/matchers/equal.rb +1 -1
- data/lib/rspec/matchers/errors.rb +1 -1
- data/lib/rspec/matchers/exist.rb +1 -1
- data/lib/rspec/matchers/extensions/instance_exec.rb +1 -1
- data/lib/rspec/matchers/generated_descriptions.rb +1 -1
- data/lib/rspec/matchers/has.rb +1 -1
- data/lib/rspec/matchers/have.rb +1 -1
- data/lib/rspec/matchers/include.rb +1 -1
- data/lib/rspec/matchers/match.rb +1 -1
- data/lib/rspec/matchers/match_array.rb +3 -3
- data/lib/rspec/matchers/matcher.rb +13 -13
- data/lib/rspec/matchers/method_missing.rb +1 -1
- data/lib/rspec/matchers/operator_matcher.rb +4 -4
- data/lib/rspec/matchers/pretty.rb +1 -1
- data/lib/rspec/matchers/raise_error.rb +1 -1
- data/lib/rspec/matchers/respond_to.rb +1 -1
- data/lib/rspec/matchers/satisfy.rb +1 -1
- data/lib/rspec/matchers/throw_symbol.rb +1 -1
- data/rspec-expectations.gemspec +17 -14
- data/spec/rspec/expectations/{differs/default_spec.rb → differ_spec.rb} +4 -36
- data/spec/rspec/expectations/fail_with_spec.rb +6 -50
- data/spec/rspec/expectations/handler_spec.rb +22 -22
- data/spec/rspec/matchers/be_close_spec.rb +1 -1
- data/spec/rspec/matchers/be_instance_of_spec.rb +1 -1
- data/spec/rspec/matchers/be_kind_of_spec.rb +1 -1
- data/spec/rspec/matchers/change_spec.rb +3 -3
- data/spec/rspec/matchers/compatibility_spec.rb +3 -3
- data/spec/rspec/matchers/description_generation_spec.rb +28 -28
- data/spec/rspec/matchers/dsl_spec.rb +3 -3
- data/spec/rspec/matchers/eq_spec.rb +1 -1
- data/spec/rspec/matchers/eql_spec.rb +1 -1
- data/spec/rspec/matchers/equal_spec.rb +1 -1
- data/spec/rspec/matchers/exist_spec.rb +1 -1
- data/spec/rspec/matchers/have_spec.rb +3 -3
- data/spec/rspec/matchers/match_array_spec.rb +3 -0
- data/spec/rspec/matchers/matcher_spec.rb +25 -25
- data/spec/rspec/matchers/operator_matcher_spec.rb +12 -12
- data/spec/rspec/matchers/throw_symbol_spec.rb +1 -1
- data/spec/spec_helper.rb +6 -7
- data/spec/support/classes.rb +1 -1
- metadata +35 -21
- data/lib/rspec/expectations/differs/default.rb +0 -62
- data/lib/rspec/expectations/differs/load-diff-lcs.rb +0 -7
@@ -15,7 +15,7 @@ describe "should ==" do
|
|
15
15
|
|
16
16
|
it "should fail when target.==(actual) returns false" do
|
17
17
|
subject = "apple"
|
18
|
-
|
18
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected: "orange",\n got: "apple" (using ==)], "orange", "apple")
|
19
19
|
subject.should == "orange"
|
20
20
|
end
|
21
21
|
|
@@ -36,7 +36,7 @@ describe "should_not ==" do
|
|
36
36
|
|
37
37
|
it "should fail when target.==(actual) returns false" do
|
38
38
|
subject = "apple"
|
39
|
-
|
39
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected not: == "apple",\n got: "apple"], "apple", "apple")
|
40
40
|
subject.should_not == "apple"
|
41
41
|
end
|
42
42
|
|
@@ -53,7 +53,7 @@ describe "should ===" do
|
|
53
53
|
it "should fail when target.===(actual) returns false" do
|
54
54
|
subject = "apple"
|
55
55
|
subject.should_receive(:===).with("orange").and_return(false)
|
56
|
-
|
56
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected: "orange",\n got: "apple" (using ===)], "orange", "apple")
|
57
57
|
subject.should === "orange"
|
58
58
|
end
|
59
59
|
|
@@ -70,7 +70,7 @@ describe "should_not ===" do
|
|
70
70
|
it "should fail when target.===(actual) returns false" do
|
71
71
|
subject = "apple"
|
72
72
|
subject.should_receive(:===).with("apple").and_return(true)
|
73
|
-
|
73
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected not: === "apple",\n got: "apple"], "apple", "apple")
|
74
74
|
subject.should_not === "apple"
|
75
75
|
end
|
76
76
|
|
@@ -87,7 +87,7 @@ describe "should =~" do
|
|
87
87
|
it "should fail when target.=~(actual) returns false" do
|
88
88
|
subject = "fu"
|
89
89
|
subject.should_receive(:=~).with(/oo/).and_return(false)
|
90
|
-
|
90
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected: /oo/,\n got: "fu" (using =~)], /oo/, "fu")
|
91
91
|
subject.should =~ /oo/
|
92
92
|
end
|
93
93
|
|
@@ -104,7 +104,7 @@ describe "should_not =~" do
|
|
104
104
|
it "should fail when target.=~(actual) returns false" do
|
105
105
|
subject = "foo"
|
106
106
|
subject.should_receive(:=~).with(/oo/).and_return(true)
|
107
|
-
|
107
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected not: =~ /oo/,\n got: "foo"], /oo/, "foo")
|
108
108
|
subject.should_not =~ /oo/
|
109
109
|
end
|
110
110
|
|
@@ -117,7 +117,7 @@ describe "should >" do
|
|
117
117
|
end
|
118
118
|
|
119
119
|
it "should fail if > fails" do
|
120
|
-
|
120
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected: > 5,\n got: 4], 5, 4)
|
121
121
|
4.should > 5
|
122
122
|
end
|
123
123
|
|
@@ -131,7 +131,7 @@ describe "should >=" do
|
|
131
131
|
end
|
132
132
|
|
133
133
|
it "should fail if > fails" do
|
134
|
-
|
134
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected: >= 5,\n got: 4], 5, 4)
|
135
135
|
4.should >= 5
|
136
136
|
end
|
137
137
|
|
@@ -144,7 +144,7 @@ describe "should <" do
|
|
144
144
|
end
|
145
145
|
|
146
146
|
it "should fail if > fails" do
|
147
|
-
|
147
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected: < 3,\n got: 4], 3, 4)
|
148
148
|
4.should < 3
|
149
149
|
end
|
150
150
|
|
@@ -158,13 +158,13 @@ describe "should <=" do
|
|
158
158
|
end
|
159
159
|
|
160
160
|
it "should fail if > fails" do
|
161
|
-
|
161
|
+
RSpec::Expectations.should_receive(:fail_with).with(%[expected: <= 3,\n got: 4], 3, 4)
|
162
162
|
4.should <= 3
|
163
163
|
end
|
164
164
|
|
165
165
|
end
|
166
166
|
|
167
|
-
describe
|
167
|
+
describe RSpec::Matchers::PositiveOperatorMatcher do
|
168
168
|
|
169
169
|
it "should work when the target has implemented #send" do
|
170
170
|
o = Object.new
|
@@ -176,7 +176,7 @@ describe Rspec::Matchers::PositiveOperatorMatcher do
|
|
176
176
|
|
177
177
|
end
|
178
178
|
|
179
|
-
describe
|
179
|
+
describe RSpec::Matchers::NegativeOperatorMatcher do
|
180
180
|
|
181
181
|
it "should work when the target has implemented #send" do
|
182
182
|
o = Object.new
|
data/spec/spec_helper.rb
CHANGED
@@ -13,7 +13,6 @@ add_to_load_path("../../rspec-mocks/lib")
|
|
13
13
|
|
14
14
|
require 'rspec/core'
|
15
15
|
require 'rspec/mocks'
|
16
|
-
require 'rspec/expectations/differs/default'
|
17
16
|
|
18
17
|
Dir['./spec/support/**/*'].each do |f|
|
19
18
|
require f
|
@@ -23,7 +22,7 @@ def with_ruby(version)
|
|
23
22
|
yield if RUBY_PLATFORM =~ Regexp.compile("^#{version}")
|
24
23
|
end
|
25
24
|
|
26
|
-
module
|
25
|
+
module RSpec
|
27
26
|
module Ruby
|
28
27
|
class << self
|
29
28
|
def version
|
@@ -33,20 +32,20 @@ module Rspec
|
|
33
32
|
end
|
34
33
|
end
|
35
34
|
|
36
|
-
module
|
35
|
+
module RSpec
|
37
36
|
module Matchers
|
38
37
|
def fail
|
39
|
-
raise_error(
|
38
|
+
raise_error(RSpec::Expectations::ExpectationNotMetError)
|
40
39
|
end
|
41
40
|
|
42
41
|
def fail_with(message)
|
43
|
-
raise_error(
|
42
|
+
raise_error(RSpec::Expectations::ExpectationNotMetError, message)
|
44
43
|
end
|
45
44
|
end
|
46
45
|
end
|
47
46
|
|
48
|
-
|
47
|
+
RSpec::configure do |config|
|
49
48
|
config.mock_with(:rspec)
|
50
|
-
config.include
|
49
|
+
config.include RSpec::Mocks::Methods
|
51
50
|
config.color_enabled = true
|
52
51
|
end
|
data/spec/support/classes.rb
CHANGED
metadata
CHANGED
@@ -7,8 +7,8 @@ version: !ruby/object:Gem::Version
|
|
7
7
|
- 0
|
8
8
|
- 0
|
9
9
|
- beta
|
10
|
-
-
|
11
|
-
version: 2.0.0.beta.
|
10
|
+
- 9
|
11
|
+
version: 2.0.0.beta.9
|
12
12
|
platform: ruby
|
13
13
|
authors:
|
14
14
|
- David Chelimsky
|
@@ -17,13 +17,27 @@ autorequire:
|
|
17
17
|
bindir: bin
|
18
18
|
cert_chain: []
|
19
19
|
|
20
|
-
date: 2010-
|
20
|
+
date: 2010-05-27 00:00:00 -05:00
|
21
21
|
default_executable:
|
22
22
|
dependencies:
|
23
23
|
- !ruby/object:Gem::Dependency
|
24
|
-
name:
|
24
|
+
name: diff-lcs
|
25
25
|
prerelease: false
|
26
26
|
requirement: &id001 !ruby/object:Gem::Requirement
|
27
|
+
requirements:
|
28
|
+
- - ">="
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
segments:
|
31
|
+
- 1
|
32
|
+
- 1
|
33
|
+
- 2
|
34
|
+
version: 1.1.2
|
35
|
+
type: :runtime
|
36
|
+
version_requirements: *id001
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: cucumber
|
39
|
+
prerelease: false
|
40
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
27
41
|
requirements:
|
28
42
|
- - ">="
|
29
43
|
- !ruby/object:Gem::Version
|
@@ -33,11 +47,11 @@ dependencies:
|
|
33
47
|
- 2
|
34
48
|
version: 0.6.2
|
35
49
|
type: :development
|
36
|
-
version_requirements: *
|
50
|
+
version_requirements: *id002
|
37
51
|
- !ruby/object:Gem::Dependency
|
38
52
|
name: aruba
|
39
53
|
prerelease: false
|
40
|
-
requirement: &
|
54
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
41
55
|
requirements:
|
42
56
|
- - ">="
|
43
57
|
- !ruby/object:Gem::Version
|
@@ -47,11 +61,11 @@ dependencies:
|
|
47
61
|
- 1
|
48
62
|
version: 0.1.1
|
49
63
|
type: :development
|
50
|
-
version_requirements: *
|
64
|
+
version_requirements: *id003
|
51
65
|
- !ruby/object:Gem::Dependency
|
52
66
|
name: rspec-core
|
53
67
|
prerelease: false
|
54
|
-
requirement: &
|
68
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
55
69
|
requirements:
|
56
70
|
- - ">="
|
57
71
|
- !ruby/object:Gem::Version
|
@@ -60,14 +74,14 @@ dependencies:
|
|
60
74
|
- 0
|
61
75
|
- 0
|
62
76
|
- beta
|
63
|
-
-
|
64
|
-
version: 2.0.0.beta.
|
77
|
+
- 9
|
78
|
+
version: 2.0.0.beta.9
|
65
79
|
type: :development
|
66
|
-
version_requirements: *
|
80
|
+
version_requirements: *id004
|
67
81
|
- !ruby/object:Gem::Dependency
|
68
82
|
name: rspec-mocks
|
69
83
|
prerelease: false
|
70
|
-
requirement: &
|
84
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
71
85
|
requirements:
|
72
86
|
- - ">="
|
73
87
|
- !ruby/object:Gem::Version
|
@@ -76,10 +90,10 @@ dependencies:
|
|
76
90
|
- 0
|
77
91
|
- 0
|
78
92
|
- beta
|
79
|
-
-
|
80
|
-
version: 2.0.0.beta.
|
93
|
+
- 9
|
94
|
+
version: 2.0.0.beta.9
|
81
95
|
type: :development
|
82
|
-
version_requirements: *
|
96
|
+
version_requirements: *id005
|
83
97
|
description: rspec expectations (should[_not] and matchers)
|
84
98
|
email: dchelimsky@gmail.com;chad.humphries@gmail.com
|
85
99
|
executables: []
|
@@ -108,8 +122,8 @@ files:
|
|
108
122
|
- features/matchers/expect_error.feature
|
109
123
|
- features/support/env.rb
|
110
124
|
- lib/rspec/expectations.rb
|
111
|
-
- lib/rspec/expectations/
|
112
|
-
- lib/rspec/expectations/
|
125
|
+
- lib/rspec/expectations/backward_compatibility.rb
|
126
|
+
- lib/rspec/expectations/differ.rb
|
113
127
|
- lib/rspec/expectations/errors.rb
|
114
128
|
- lib/rspec/expectations/extensions.rb
|
115
129
|
- lib/rspec/expectations/extensions/kernel.rb
|
@@ -146,7 +160,7 @@ files:
|
|
146
160
|
- lib/rspec/matchers/satisfy.rb
|
147
161
|
- lib/rspec/matchers/throw_symbol.rb
|
148
162
|
- rspec-expectations.gemspec
|
149
|
-
- spec/rspec/expectations/
|
163
|
+
- spec/rspec/expectations/differ_spec.rb
|
150
164
|
- spec/rspec/expectations/extensions/kernel_spec.rb
|
151
165
|
- spec/rspec/expectations/fail_with_spec.rb
|
152
166
|
- spec/rspec/expectations/handler_spec.rb
|
@@ -185,7 +199,7 @@ licenses: []
|
|
185
199
|
post_install_message: |
|
186
200
|
**************************************************
|
187
201
|
|
188
|
-
Thank you for installing rspec-expectations-2.0.0.beta.
|
202
|
+
Thank you for installing rspec-expectations-2.0.0.beta.9
|
189
203
|
|
190
204
|
This is beta software. If you are looking
|
191
205
|
for a supported production release, please
|
@@ -219,9 +233,9 @@ rubyforge_project: rspec
|
|
219
233
|
rubygems_version: 1.3.6
|
220
234
|
signing_key:
|
221
235
|
specification_version: 3
|
222
|
-
summary: rspec-expectations-2.0.0.beta.
|
236
|
+
summary: rspec-expectations-2.0.0.beta.9
|
223
237
|
test_files:
|
224
|
-
- spec/rspec/expectations/
|
238
|
+
- spec/rspec/expectations/differ_spec.rb
|
225
239
|
- spec/rspec/expectations/extensions/kernel_spec.rb
|
226
240
|
- spec/rspec/expectations/fail_with_spec.rb
|
227
241
|
- spec/rspec/expectations/handler_spec.rb
|
@@ -1,62 +0,0 @@
|
|
1
|
-
require File.join(File.dirname(__FILE__), "/load-diff-lcs")
|
2
|
-
require 'pp'
|
3
|
-
|
4
|
-
module Rspec
|
5
|
-
module Expectations
|
6
|
-
module Differs
|
7
|
-
unless defined?(Default)
|
8
|
-
class Default
|
9
|
-
def initialize(options)
|
10
|
-
@options = options
|
11
|
-
end
|
12
|
-
|
13
|
-
# This is snagged from diff/lcs/ldiff.rb (which is a commandline tool)
|
14
|
-
def diff_as_string(data_new, data_old)
|
15
|
-
data_old = data_old.split(/\n/).map! { |e| e.chomp }
|
16
|
-
data_new = data_new.split(/\n/).map! { |e| e.chomp }
|
17
|
-
output = ""
|
18
|
-
diffs = Diff::LCS.diff(data_old, data_new)
|
19
|
-
return output if diffs.empty?
|
20
|
-
oldhunk = hunk = nil
|
21
|
-
file_length_difference = 0
|
22
|
-
diffs.each do |piece|
|
23
|
-
begin
|
24
|
-
hunk = Diff::LCS::Hunk.new(data_old, data_new, piece, context_lines,
|
25
|
-
file_length_difference)
|
26
|
-
file_length_difference = hunk.file_length_difference
|
27
|
-
next unless oldhunk
|
28
|
-
# Hunks may overlap, which is why we need to be careful when our
|
29
|
-
# diff includes lines of context. Otherwise, we might print
|
30
|
-
# redundant lines.
|
31
|
-
if (context_lines > 0) and hunk.overlaps?(oldhunk)
|
32
|
-
hunk.unshift(oldhunk)
|
33
|
-
else
|
34
|
-
output << oldhunk.diff(format)
|
35
|
-
end
|
36
|
-
ensure
|
37
|
-
oldhunk = hunk
|
38
|
-
output << "\n"
|
39
|
-
end
|
40
|
-
end
|
41
|
-
#Handle the last remaining hunk
|
42
|
-
output << oldhunk.diff(format) << "\n"
|
43
|
-
end
|
44
|
-
|
45
|
-
def diff_as_object(target,expected)
|
46
|
-
diff_as_string(PP.pp(target,""), PP.pp(expected,""))
|
47
|
-
end
|
48
|
-
|
49
|
-
protected
|
50
|
-
def format
|
51
|
-
@options.diff_format
|
52
|
-
end
|
53
|
-
|
54
|
-
def context_lines
|
55
|
-
@options.context_lines
|
56
|
-
end
|
57
|
-
end
|
58
|
-
|
59
|
-
end
|
60
|
-
end
|
61
|
-
end
|
62
|
-
end
|