rspec-core 2.0.0.beta.7 → 2.0.0.beta.8
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/cucumber.yml +1 -1
- data/features/hooks/before_and_after_hooks.feature +42 -16
- data/features/pending/pending_examples.feature +6 -6
- data/features/subject/explicit_subject.feature +2 -3
- data/features/subject/implicit_subject.feature +0 -4
- data/features/support/env.rb +1 -1
- data/lib/rspec/core.rb +2 -0
- data/lib/rspec/core/errors.rb +14 -0
- data/lib/rspec/core/example.rb +57 -64
- data/lib/rspec/core/example_group.rb +61 -66
- data/lib/rspec/core/formatters/base_text_formatter.rb +11 -8
- data/lib/rspec/core/formatters/documentation_formatter.rb +4 -4
- data/lib/rspec/core/pending.rb +19 -0
- data/lib/rspec/core/subject.rb +1 -1
- data/rspec-core.gemspec +14 -12
- data/spec/rspec/core/configuration_spec.rb +3 -3
- data/spec/rspec/core/example_group_spec.rb +70 -128
- data/spec/rspec/core/example_spec.rb +39 -17
- data/spec/rspec/core/formatters/helpers_spec.rb +5 -4
- data/spec/rspec/core/let_spec.rb +42 -0
- data/spec/rspec/core/pending_example_spec.rb +72 -6
- data/spec/rspec/core/shared_example_group_spec.rb +77 -93
- data/spec/rspec/core/subject_spec.rb +6 -6
- data/spec/rspec/core/world_spec.rb +4 -4
- data/spec/spec_helper.rb +14 -7
- metadata +13 -11
- data/spec/rspec/core/mocha_spec.rb +0 -27
@@ -7,25 +7,25 @@ module Rspec::Core
|
|
7
7
|
describe "implicit subject" do
|
8
8
|
describe "with a class" do
|
9
9
|
it "returns an instance of the class" do
|
10
|
-
ExampleGroup.
|
10
|
+
ExampleGroup.describe(Array).subject.call.should == []
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
14
14
|
describe "with a Module" do
|
15
15
|
it "returns the Module" do
|
16
|
-
ExampleGroup.
|
16
|
+
ExampleGroup.describe(Enumerable).subject.call.should == Enumerable
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
20
20
|
describe "with a string" do
|
21
21
|
it "return the string" do
|
22
|
-
ExampleGroup.
|
22
|
+
ExampleGroup.describe("Foo").subject.call.should == 'Foo'
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
26
|
describe "with a number" do
|
27
27
|
it "returns the number" do
|
28
|
-
ExampleGroup.
|
28
|
+
ExampleGroup.describe(15).subject.call.should == 15
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
@@ -34,7 +34,7 @@ module Rspec::Core
|
|
34
34
|
describe "explicit subject" do
|
35
35
|
describe "defined in a top level group" do
|
36
36
|
it "replaces the implicit subject in that group" do
|
37
|
-
group = ExampleGroup.
|
37
|
+
group = ExampleGroup.describe(Array)
|
38
38
|
group.subject { [1,2,3] }
|
39
39
|
group.subject.call.should == [1,2,3]
|
40
40
|
end
|
@@ -42,7 +42,7 @@ module Rspec::Core
|
|
42
42
|
|
43
43
|
describe "defined in a top level group" do
|
44
44
|
let(:group) do
|
45
|
-
ExampleGroup.
|
45
|
+
ExampleGroup.describe do
|
46
46
|
subject{ [4,5,6] }
|
47
47
|
end
|
48
48
|
end
|
@@ -87,14 +87,14 @@ module Rspec::Core
|
|
87
87
|
it "should find nothing if all describes match the exclusion filter" do
|
88
88
|
options = { :network_access => true }
|
89
89
|
|
90
|
-
group1 = ExampleGroup.
|
90
|
+
group1 = ExampleGroup.describe(Bar, "find group-1", options) do
|
91
91
|
it("foo") {}
|
92
92
|
it("bar") {}
|
93
93
|
end
|
94
94
|
|
95
95
|
@world.apply_exclusion_filters(group1.examples, :network_access => true).should == []
|
96
96
|
|
97
|
-
group2 = ExampleGroup.
|
97
|
+
group2 = ExampleGroup.describe(Bar, "find group-1") do
|
98
98
|
it("foo", :network_access => true) {}
|
99
99
|
it("bar") {}
|
100
100
|
end
|
@@ -104,7 +104,7 @@ module Rspec::Core
|
|
104
104
|
end
|
105
105
|
|
106
106
|
it "should find nothing if a regexp matches the exclusion filter" do
|
107
|
-
group = ExampleGroup.
|
107
|
+
group = ExampleGroup.describe(Bar, "find group-1", :name => "exclude me with a regex", :another => "foo") do
|
108
108
|
it("foo") {}
|
109
109
|
it("bar") {}
|
110
110
|
end
|
@@ -123,7 +123,7 @@ module Rspec::Core
|
|
123
123
|
describe "filtering example groups" do
|
124
124
|
|
125
125
|
it "should run matches" do
|
126
|
-
@group1 = ExampleGroup.
|
126
|
+
@group1 = ExampleGroup.describe(Bar, "find these examples") do
|
127
127
|
it('I have no options', :color => :red, :awesome => true) {}
|
128
128
|
it("I also have no options", :color => :red, :awesome => true) {}
|
129
129
|
it("not so awesome", :color => :red, :awesome => false) {}
|
data/spec/spec_helper.rb
CHANGED
@@ -9,7 +9,7 @@ require 'rspec/mocks'
|
|
9
9
|
begin
|
10
10
|
require 'autotest'
|
11
11
|
rescue LoadError
|
12
|
-
raise "
|
12
|
+
raise "Could not load autotest."
|
13
13
|
end
|
14
14
|
|
15
15
|
require 'autotest/rspec2'
|
@@ -30,12 +30,12 @@ module Rspec
|
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
33
|
+
class Rspec::Core::ExampleGroup
|
34
|
+
def self.run_all(reporter=nil)
|
35
|
+
reporter ||= Rspec::Mocks::Mock.new('reporter').as_null_object
|
36
|
+
examples_to_run.replace(examples)
|
37
|
+
run(reporter)
|
38
|
+
end
|
39
39
|
end
|
40
40
|
|
41
41
|
def in_editor?
|
@@ -47,4 +47,11 @@ Rspec.configure do |c|
|
|
47
47
|
c.exclusion_filter = { :ruby => lambda {|version|
|
48
48
|
!(RUBY_VERSION.to_s =~ /^#{version.to_s}/)
|
49
49
|
}}
|
50
|
+
c.before do
|
51
|
+
@real_world = Rspec::Core.world
|
52
|
+
Rspec::Core.instance_variable_set(:@world, Rspec::Core::World.new)
|
53
|
+
end
|
54
|
+
c.after do
|
55
|
+
Rspec::Core.instance_variable_set(:@world, @real_world)
|
56
|
+
end
|
50
57
|
end
|
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
|
+
- 8
|
11
|
+
version: 2.0.0.beta.8
|
12
12
|
platform: ruby
|
13
13
|
authors:
|
14
14
|
- Chad Humphries
|
@@ -17,7 +17,7 @@ autorequire:
|
|
17
17
|
bindir: bin
|
18
18
|
cert_chain: []
|
19
19
|
|
20
|
-
date: 2010-04-
|
20
|
+
date: 2010-04-27 00:00:00 -05:00
|
21
21
|
default_executable:
|
22
22
|
dependencies:
|
23
23
|
- !ruby/object:Gem::Dependency
|
@@ -32,8 +32,8 @@ dependencies:
|
|
32
32
|
- 0
|
33
33
|
- 0
|
34
34
|
- beta
|
35
|
-
-
|
36
|
-
version: 2.0.0.beta.
|
35
|
+
- 8
|
36
|
+
version: 2.0.0.beta.8
|
37
37
|
type: :development
|
38
38
|
version_requirements: *id001
|
39
39
|
- !ruby/object:Gem::Dependency
|
@@ -48,8 +48,8 @@ dependencies:
|
|
48
48
|
- 0
|
49
49
|
- 0
|
50
50
|
- beta
|
51
|
-
-
|
52
|
-
version: 2.0.0.beta.
|
51
|
+
- 8
|
52
|
+
version: 2.0.0.beta.8
|
53
53
|
type: :development
|
54
54
|
version_requirements: *id002
|
55
55
|
- !ruby/object:Gem::Dependency
|
@@ -178,6 +178,7 @@ files:
|
|
178
178
|
- lib/rspec/core/configuration.rb
|
179
179
|
- lib/rspec/core/configuration_options.rb
|
180
180
|
- lib/rspec/core/deprecation.rb
|
181
|
+
- lib/rspec/core/errors.rb
|
181
182
|
- lib/rspec/core/example.rb
|
182
183
|
- lib/rspec/core/example_group.rb
|
183
184
|
- lib/rspec/core/formatters.rb
|
@@ -196,6 +197,7 @@ files:
|
|
196
197
|
- lib/rspec/core/mocking/with_mocha.rb
|
197
198
|
- lib/rspec/core/mocking/with_rr.rb
|
198
199
|
- lib/rspec/core/mocking/with_rspec.rb
|
200
|
+
- lib/rspec/core/pending.rb
|
199
201
|
- lib/rspec/core/rake_task.rb
|
200
202
|
- lib/rspec/core/ruby_project.rb
|
201
203
|
- lib/rspec/core/runner.rb
|
@@ -217,8 +219,8 @@ files:
|
|
217
219
|
- spec/rspec/core/formatters/helpers_spec.rb
|
218
220
|
- spec/rspec/core/formatters/progress_formatter_spec.rb
|
219
221
|
- spec/rspec/core/kernel_extensions_spec.rb
|
222
|
+
- spec/rspec/core/let_spec.rb
|
220
223
|
- spec/rspec/core/metadata_spec.rb
|
221
|
-
- spec/rspec/core/mocha_spec.rb
|
222
224
|
- spec/rspec/core/pending_example_spec.rb
|
223
225
|
- spec/rspec/core/resources/a_bar.rb
|
224
226
|
- spec/rspec/core/resources/a_foo.rb
|
@@ -242,7 +244,7 @@ licenses: []
|
|
242
244
|
post_install_message: |
|
243
245
|
**************************************************
|
244
246
|
|
245
|
-
Thank you for installing rspec-core-2.0.0.beta.
|
247
|
+
Thank you for installing rspec-core-2.0.0.beta.8
|
246
248
|
|
247
249
|
This is beta software. If you are looking
|
248
250
|
for a supported production release, please
|
@@ -276,7 +278,7 @@ rubyforge_project: rspec
|
|
276
278
|
rubygems_version: 1.3.6
|
277
279
|
signing_key:
|
278
280
|
specification_version: 3
|
279
|
-
summary: rspec-core-2.0.0.beta.
|
281
|
+
summary: rspec-core-2.0.0.beta.8
|
280
282
|
test_files:
|
281
283
|
- spec/autotest/failed_results_re_spec.rb
|
282
284
|
- spec/autotest/rspec_spec.rb
|
@@ -290,8 +292,8 @@ test_files:
|
|
290
292
|
- spec/rspec/core/formatters/helpers_spec.rb
|
291
293
|
- spec/rspec/core/formatters/progress_formatter_spec.rb
|
292
294
|
- spec/rspec/core/kernel_extensions_spec.rb
|
295
|
+
- spec/rspec/core/let_spec.rb
|
293
296
|
- spec/rspec/core/metadata_spec.rb
|
294
|
-
- spec/rspec/core/mocha_spec.rb
|
295
297
|
- spec/rspec/core/pending_example_spec.rb
|
296
298
|
- spec/rspec/core/resources/a_bar.rb
|
297
299
|
- spec/rspec/core/resources/a_foo.rb
|
@@ -1,27 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe "Mocha Regression involving double reporting of errors" do
|
4
|
-
|
5
|
-
it "should not double report mocha errors" do
|
6
|
-
# The below example should have one error, not two
|
7
|
-
# I'm also not sure how to test this regression without having the failure counting by
|
8
|
-
# the running Rspec::Core instance
|
9
|
-
formatter = Rspec::Core::Formatters::BaseFormatter.new
|
10
|
-
|
11
|
-
use_formatter(formatter) do
|
12
|
-
|
13
|
-
group = Rspec::Core::ExampleGroup.create("my favorite pony") do
|
14
|
-
example("showing a double fail") do
|
15
|
-
foo = "string"
|
16
|
-
foo.expects(:something)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
group.examples_to_run.replace(group.examples)
|
20
|
-
group.run(formatter)
|
21
|
-
|
22
|
-
end
|
23
|
-
|
24
|
-
formatter.examples.size.should == 1
|
25
|
-
end
|
26
|
-
|
27
|
-
end
|