mspec 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +9 -7
  3. data/lib/mspec/commands/mspec.rb +0 -8
  4. data/lib/mspec/guards/platform.rb +4 -0
  5. data/lib/mspec/helpers/environment.rb +12 -22
  6. data/lib/mspec/helpers/io.rb +6 -1
  7. data/lib/mspec/helpers/mock_to_path.rb +1 -1
  8. data/lib/mspec/helpers/ruby_exe.rb +8 -3
  9. data/lib/mspec/runner/actions.rb +0 -1
  10. data/lib/mspec/utils/options.rb +0 -4
  11. data/lib/mspec/utils/script.rb +0 -1
  12. data/lib/mspec/version.rb +1 -1
  13. data/spec/commands/mkspec_spec.rb +31 -31
  14. data/spec/commands/mspec_ci_spec.rb +14 -14
  15. data/spec/commands/mspec_run_spec.rb +4 -4
  16. data/spec/commands/mspec_spec.rb +33 -56
  17. data/spec/commands/mspec_tag_spec.rb +26 -26
  18. data/spec/guards/background_spec.rb +1 -1
  19. data/spec/guards/block_device_spec.rb +1 -1
  20. data/spec/guards/bug_spec.rb +4 -4
  21. data/spec/guards/compliance_spec.rb +2 -2
  22. data/spec/guards/conflict_spec.rb +5 -5
  23. data/spec/guards/endian_spec.rb +8 -8
  24. data/spec/guards/extensions_spec.rb +1 -1
  25. data/spec/guards/feature_spec.rb +1 -1
  26. data/spec/guards/guard_spec.rb +20 -20
  27. data/spec/guards/noncompliance_spec.rb +1 -1
  28. data/spec/guards/platform_spec.rb +14 -14
  29. data/spec/guards/quarantine_spec.rb +1 -1
  30. data/spec/guards/runner_spec.rb +7 -7
  31. data/spec/guards/specified_spec.rb +7 -7
  32. data/spec/guards/superuser_spec.rb +3 -3
  33. data/spec/guards/support_spec.rb +1 -1
  34. data/spec/guards/tty_spec.rb +1 -1
  35. data/spec/guards/user_spec.rb +3 -3
  36. data/spec/guards/version_spec.rb +3 -3
  37. data/spec/helpers/ducktype_spec.rb +3 -3
  38. data/spec/helpers/environment_spec.rb +18 -10
  39. data/spec/helpers/flunk_spec.rb +2 -2
  40. data/spec/helpers/io_spec.rb +2 -2
  41. data/spec/helpers/ruby_exe_spec.rb +5 -9
  42. data/spec/matchers/have_singleton_method_spec.rb +1 -1
  43. data/spec/matchers/output_spec.rb +1 -1
  44. data/spec/mocks/mock_spec.rb +41 -41
  45. data/spec/mocks/proxy_spec.rb +1 -1
  46. data/spec/runner/actions/filter_spec.rb +1 -1
  47. data/spec/runner/actions/tag_spec.rb +17 -17
  48. data/spec/runner/actions/taglist_spec.rb +8 -8
  49. data/spec/runner/actions/tagpurge_spec.rb +11 -11
  50. data/spec/runner/actions/timer_spec.rb +4 -4
  51. data/spec/runner/context_spec.rb +32 -32
  52. data/spec/runner/example_spec.rb +1 -1
  53. data/spec/runner/filters/profile_spec.rb +2 -2
  54. data/spec/runner/filters/tag_spec.rb +6 -6
  55. data/spec/runner/formatters/describe_spec.rb +6 -6
  56. data/spec/runner/formatters/dotted_spec.rb +10 -10
  57. data/spec/runner/formatters/file_spec.rb +2 -2
  58. data/spec/runner/formatters/html_spec.rb +10 -10
  59. data/spec/runner/formatters/junit_spec.rb +11 -11
  60. data/spec/runner/formatters/method_spec.rb +3 -3
  61. data/spec/runner/formatters/specdoc_spec.rb +1 -1
  62. data/spec/runner/formatters/spinner_spec.rb +4 -4
  63. data/spec/runner/formatters/unit_spec.rb +7 -7
  64. data/spec/runner/formatters/yaml_spec.rb +10 -10
  65. data/spec/runner/mspec_spec.rb +25 -25
  66. data/spec/runner/shared_spec.rb +1 -1
  67. data/spec/utils/options_spec.rb +28 -50
  68. data/spec/utils/script_spec.rb +15 -24
  69. metadata +12 -16
  70. data/lib/mspec/runner/actions/gdb.rb +0 -17
  71. data/spec/runner/actions/gdb_spec.rb +0 -61
@@ -68,7 +68,7 @@ describe ExampleState, "#filtered?" do
68
68
  MSpec.store :exclude, nil
69
69
 
70
70
  @state = ExampleState.new ContextState.new("describe"), "it"
71
- @filter = mock("filter")
71
+ @filter = double("filter")
72
72
  end
73
73
 
74
74
  after :each do
@@ -5,7 +5,7 @@ require 'mspec/runner/filters/profile'
5
5
  describe ProfileFilter, "#find" do
6
6
  before :each do
7
7
  @filter = ProfileFilter.new nil
8
- File.stub!(:exist?).and_return(false)
8
+ File.stub(:exist?).and_return(false)
9
9
  @file = "rails.yaml"
10
10
  end
11
11
 
@@ -79,7 +79,7 @@ end
79
79
  describe ProfileFilter, "#===" do
80
80
  before :each do
81
81
  @filter = ProfileFilter.new nil
82
- @filter.stub!(:load).and_return({ "A#" => ["[]=", "a", "a!", "a?", "aa="]})
82
+ @filter.stub(:load).and_return({ "A#" => ["[]=", "a", "a!", "a?", "aa="]})
83
83
  @filter.send :initialize, nil
84
84
  end
85
85
 
@@ -5,11 +5,11 @@ require 'mspec/runner/filters/tag'
5
5
 
6
6
  describe TagFilter, "#load" do
7
7
  before :each do
8
- @match = mock("match filter").as_null_object
8
+ @match = double("match filter").as_null_object
9
9
  @filter = TagFilter.new :include, "tag", "key"
10
10
  @tag = SpecTag.new "tag(comment):description"
11
- MSpec.stub!(:read_tags).and_return([@tag])
12
- MSpec.stub!(:register)
11
+ MSpec.stub(:read_tags).and_return([@tag])
12
+ MSpec.stub(:register)
13
13
  end
14
14
 
15
15
  it "loads tags from the tag file" do
@@ -46,13 +46,13 @@ describe TagFilter, "#unload" do
46
46
  before :each do
47
47
  @filter = TagFilter.new :include, "tag", "key"
48
48
  @tag = SpecTag.new "tag(comment):description"
49
- MSpec.stub!(:read_tags).and_return([@tag])
49
+ MSpec.stub(:read_tags).and_return([@tag])
50
50
  end
51
51
 
52
52
  it "unregisters the MatchFilter if one was registered" do
53
- match = mock("match filter").as_null_object
53
+ match = double("match filter").as_null_object
54
54
  match.should_receive(:unregister)
55
- MatchFilter.stub!(:new).with(:include, "description").and_return(match)
55
+ MatchFilter.stub(:new).with(:include, "description").and_return(match)
56
56
  @filter.load
57
57
  @filter.unload
58
58
  end
@@ -4,12 +4,12 @@ require 'mspec/runner/example'
4
4
 
5
5
  describe DescribeFormatter, "#finish" do
6
6
  before :each do
7
- MSpec.stub!(:register)
8
- MSpec.stub!(:unregister)
7
+ MSpec.stub(:register)
8
+ MSpec.stub(:unregister)
9
9
 
10
- @timer = mock("timer").as_null_object
11
- TimerAction.stub!(:new).and_return(@timer)
12
- @timer.stub!(:format).and_return("Finished in 2.0 seconds")
10
+ @timer = double("timer").as_null_object
11
+ TimerAction.stub(:new).and_return(@timer)
12
+ @timer.stub(:format).and_return("Finished in 2.0 seconds")
13
13
 
14
14
  $stdout = @out = IOStub.new
15
15
  context = ContextState.new "Class#method"
@@ -52,7 +52,7 @@ Finished in 2.0 seconds
52
52
 
53
53
  it "prints a summary of failures and errors for each describe block" do
54
54
  exc = ExceptionState.new @state, nil, MSpecExampleError.new("broken")
55
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in method")
55
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in method")
56
56
  @formatter.exception exc
57
57
  @formatter.finish
58
58
  @out.should == %[
@@ -17,7 +17,7 @@ end
17
17
  describe DottedFormatter, "#register" do
18
18
  before :each do
19
19
  @formatter = DottedFormatter.new
20
- MSpec.stub!(:register)
20
+ MSpec.stub(:register)
21
21
  end
22
22
 
23
23
  it "registers self with MSpec for appropriate actions" do
@@ -29,8 +29,8 @@ describe DottedFormatter, "#register" do
29
29
  end
30
30
 
31
31
  it "creates TimerAction and TallyAction" do
32
- timer = mock("timer")
33
- tally = mock("tally")
32
+ timer = double("timer")
33
+ tally = double("tally")
34
34
  timer.should_receive(:register)
35
35
  tally.should_receive(:register)
36
36
  tally.should_receive(:counter)
@@ -221,15 +221,15 @@ end
221
221
 
222
222
  describe DottedFormatter, "#finish" do
223
223
  before :each do
224
- @tally = mock("tally").as_null_object
225
- TallyAction.stub!(:new).and_return(@tally)
226
- @timer = mock("timer").as_null_object
227
- TimerAction.stub!(:new).and_return(@timer)
224
+ @tally = double("tally").as_null_object
225
+ TallyAction.stub(:new).and_return(@tally)
226
+ @timer = double("timer").as_null_object
227
+ TimerAction.stub(:new).and_return(@timer)
228
228
 
229
229
  $stdout = @out = IOStub.new
230
230
  context = ContextState.new "Class#method"
231
231
  @state = ExampleState.new(context, "runs")
232
- MSpec.stub!(:register)
232
+ MSpec.stub(:register)
233
233
  @formatter = DottedFormatter.new
234
234
  @formatter.register
235
235
  end
@@ -248,7 +248,7 @@ describe DottedFormatter, "#finish" do
248
248
 
249
249
  it "prints a backtrace for an exception" do
250
250
  exc = ExceptionState.new @state, nil, MSpecExampleError.new("broken")
251
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in method")
251
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in method")
252
252
  @formatter.exception exc
253
253
  @formatter.after @state
254
254
  @formatter.finish
@@ -269,7 +269,7 @@ describe DottedFormatter, "#finish" do
269
269
 
270
270
  it "prints errors, backtraces, elapsed time, and tallies" do
271
271
  exc = ExceptionState.new @state, nil, MSpecExampleError.new("broken")
272
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in method")
272
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in method")
273
273
  @formatter.exception exc
274
274
  @timer.should_receive(:format).and_return("Finished in 2.0 seconds")
275
275
  @tally.should_receive(:format).and_return("1 example, 1 failure")
@@ -6,8 +6,8 @@ require 'mspec/runner/example'
6
6
  describe FileFormatter, "#register" do
7
7
  before :each do
8
8
  @formatter = FileFormatter.new
9
- MSpec.stub!(:register)
10
- MSpec.stub!(:unregister)
9
+ MSpec.stub(:register)
10
+ MSpec.stub(:unregister)
11
11
  end
12
12
 
13
13
  it "registers self with MSpec for :load, :unload actions" do
@@ -12,7 +12,7 @@ describe HtmlFormatter do
12
12
  end
13
13
 
14
14
  it "responds to #register by registering itself with MSpec for appropriate actions" do
15
- MSpec.stub!(:register)
15
+ MSpec.stub(:register)
16
16
  MSpec.should_receive(:register).with(:start, @formatter)
17
17
  MSpec.should_receive(:register).with(:enter, @formatter)
18
18
  MSpec.should_receive(:register).with(:leave, @formatter)
@@ -33,7 +33,7 @@ describe HtmlFormatter, "#start" do
33
33
  it "prints the HTML head" do
34
34
  @formatter.start
35
35
  ruby_name = RUBY_NAME
36
- ruby_name.should =~ /^ruby/
36
+ ruby_name.should =~ /^#{ruby_name}/
37
37
  @out.should ==
38
38
  %[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
39
39
  "http://www.w3.org/TR/html4/strict.dtd">
@@ -144,19 +144,19 @@ end
144
144
 
145
145
  describe HtmlFormatter, "#finish" do
146
146
  before :each do
147
- @tally = mock("tally").as_null_object
148
- TallyAction.stub!(:new).and_return(@tally)
149
- @timer = mock("timer").as_null_object
150
- TimerAction.stub!(:new).and_return(@timer)
147
+ @tally = double("tally").as_null_object
148
+ TallyAction.stub(:new).and_return(@tally)
149
+ @timer = double("timer").as_null_object
150
+ TimerAction.stub(:new).and_return(@timer)
151
151
 
152
152
  $stdout = @out = IOStub.new
153
153
  context = ContextState.new "describe"
154
154
  @state = ExampleState.new(context, "it")
155
- MSpec.stub!(:register)
155
+ MSpec.stub(:register)
156
156
  @formatter = HtmlFormatter.new
157
157
  @formatter.register
158
158
  @exception = MSpecExampleError.new("broken")
159
- @exception.stub!(:backtrace).and_return(["file.rb:1", "file.rb:2"])
159
+ @exception.stub(:backtrace).and_return(["file.rb:1", "file.rb:2"])
160
160
  end
161
161
 
162
162
  after :each do
@@ -172,7 +172,7 @@ describe HtmlFormatter, "#finish" do
172
172
 
173
173
  it "prints a backtrace for an exception" do
174
174
  exc = ExceptionState.new @state, nil, @exception
175
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in method")
175
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in method")
176
176
  @formatter.exception exc
177
177
  @formatter.finish
178
178
  @out.should =~ %r[<pre>.*path/to/some/file.rb:35:in method.*</pre>]m
@@ -192,7 +192,7 @@ describe HtmlFormatter, "#finish" do
192
192
 
193
193
  it "prints errors, backtraces, elapsed time, and tallies" do
194
194
  exc = ExceptionState.new @state, nil, @exception
195
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in method")
195
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in method")
196
196
  @formatter.exception exc
197
197
 
198
198
  @timer.should_receive(:format).and_return("Finished in 2.0 seconds")
@@ -17,7 +17,7 @@ describe JUnitFormatter, "#print" do
17
17
  before :each do
18
18
  $stdout = IOStub.new
19
19
  @out = IOStub.new
20
- File.stub!(:open).and_return(@out)
20
+ File.stub(:open).and_return(@out)
21
21
  @formatter = JUnitFormatter.new "some/file"
22
22
  end
23
23
 
@@ -49,25 +49,25 @@ end
49
49
 
50
50
  describe JUnitFormatter, "#finish" do
51
51
  before :each do
52
- @tally = mock("tally").as_null_object
53
- @counter = mock("counter").as_null_object
54
- @tally.stub!(:counter).and_return(@counter)
55
- TallyAction.stub!(:new).and_return(@tally)
52
+ @tally = double("tally").as_null_object
53
+ @counter = double("counter").as_null_object
54
+ @tally.stub(:counter).and_return(@counter)
55
+ TallyAction.stub(:new).and_return(@tally)
56
56
 
57
- @timer = mock("timer").as_null_object
58
- TimerAction.stub!(:new).and_return(@timer)
57
+ @timer = double("timer").as_null_object
58
+ TimerAction.stub(:new).and_return(@timer)
59
59
 
60
60
  $stdout = IOStub.new
61
61
  context = ContextState.new "describe"
62
62
  @state = ExampleState.new(context, "it")
63
63
 
64
64
  @formatter = JUnitFormatter.new
65
- @formatter.stub!(:backtrace).and_return("")
66
- MSpec.stub!(:register)
65
+ @formatter.stub(:backtrace).and_return("")
66
+ MSpec.stub(:register)
67
67
  @formatter.register
68
68
 
69
69
  exc = ExceptionState.new @state, nil, MSpecExampleError.new("broken")
70
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in method")
70
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in method")
71
71
  @formatter.exception exc
72
72
  @formatter.after @state
73
73
  end
@@ -90,7 +90,7 @@ describe JUnitFormatter, "#finish" do
90
90
 
91
91
  it "encodes message and backtrace in latin1 for jenkins" do
92
92
  exc = ExceptionState.new @state, nil, MSpecExampleError.new("broken…")
93
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in methød")
93
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in methød")
94
94
  @formatter.exception exc
95
95
  @formatter.finish
96
96
  $stdout.should =~ /MSpecExampleError: broken((\.\.\.)|\?)\n/
@@ -26,7 +26,7 @@ end
26
26
  describe MethodFormatter, "#before" do
27
27
  before :each do
28
28
  @formatter = MethodFormatter.new
29
- MSpec.stub!(:register)
29
+ MSpec.stub(:register)
30
30
  @formatter.register
31
31
  end
32
32
 
@@ -94,7 +94,7 @@ end
94
94
  describe MethodFormatter, "#after" do
95
95
  before :each do
96
96
  @formatter = MethodFormatter.new
97
- MSpec.stub!(:register)
97
+ MSpec.stub(:register)
98
98
  @formatter.register
99
99
  end
100
100
 
@@ -138,7 +138,7 @@ describe MethodFormatter, "#after" do
138
138
  context = ContextState.new "Class#method"
139
139
  @state = ExampleState.new(context, "runs")
140
140
  @formatter = MethodFormatter.new
141
- MSpec.stub!(:register)
141
+ MSpec.stub(:register)
142
142
  @formatter.register
143
143
  end
144
144
 
@@ -8,7 +8,7 @@ describe SpecdocFormatter do
8
8
  end
9
9
 
10
10
  it "responds to #register by registering itself with MSpec for appropriate actions" do
11
- MSpec.stub!(:register)
11
+ MSpec.stub(:register)
12
12
  MSpec.should_receive(:register).with(:enter, @formatter)
13
13
  @formatter.register
14
14
  end
@@ -16,7 +16,7 @@ end
16
16
  describe SpinnerFormatter, "#register" do
17
17
  before :each do
18
18
  @formatter = SpinnerFormatter.new
19
- MSpec.stub!(:register)
19
+ MSpec.stub(:register)
20
20
  end
21
21
 
22
22
  it "registers self with MSpec for appropriate actions" do
@@ -28,8 +28,8 @@ describe SpinnerFormatter, "#register" do
28
28
  end
29
29
 
30
30
  it "creates TimerAction and TallyAction" do
31
- timer = mock("timer")
32
- tally = mock("tally")
31
+ timer = double("timer")
32
+ tally = double("tally")
33
33
  timer.should_receive(:register)
34
34
  tally.should_receive(:register)
35
35
  tally.should_receive(:counter)
@@ -55,7 +55,7 @@ end
55
55
  describe SpinnerFormatter, "#after" do
56
56
  before :each do
57
57
  $stdout = IOStub.new
58
- MSpec.stub!(:retrieve).and_return(["a", "b"])
58
+ MSpec.stub(:retrieve).and_return(["a", "b"])
59
59
  @formatter = SpinnerFormatter.new
60
60
  @formatter.register
61
61
  @state = ExampleState.new("describe", "it")
@@ -5,15 +5,15 @@ require 'mspec/utils/script'
5
5
 
6
6
  describe UnitdiffFormatter, "#finish" do
7
7
  before :each do
8
- @tally = mock("tally").as_null_object
9
- TallyAction.stub!(:new).and_return(@tally)
10
- @timer = mock("timer").as_null_object
11
- TimerAction.stub!(:new).and_return(@timer)
8
+ @tally = double("tally").as_null_object
9
+ TallyAction.stub(:new).and_return(@tally)
10
+ @timer = double("timer").as_null_object
11
+ TimerAction.stub(:new).and_return(@timer)
12
12
 
13
13
  $stdout = @out = IOStub.new
14
14
  context = ContextState.new "describe"
15
15
  @state = ExampleState.new(context, "it")
16
- MSpec.stub!(:register)
16
+ MSpec.stub(:register)
17
17
  @formatter = UnitdiffFormatter.new
18
18
  @formatter.register
19
19
  end
@@ -32,7 +32,7 @@ describe UnitdiffFormatter, "#finish" do
32
32
 
33
33
  it "prints a backtrace for an exception" do
34
34
  exc = ExceptionState.new @state, nil, Exception.new("broken")
35
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in method")
35
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in method")
36
36
  @formatter.exception exc
37
37
  @formatter.finish
38
38
  @out.should =~ %r[path/to/some/file.rb:35:in method$]
@@ -52,7 +52,7 @@ describe UnitdiffFormatter, "#finish" do
52
52
 
53
53
  it "prints errors, backtraces, elapsed time, and tallies" do
54
54
  exc = ExceptionState.new @state, nil, Exception.new("broken")
55
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in method")
55
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in method")
56
56
  @formatter.exception exc
57
57
  @formatter.after @state
58
58
  @timer.should_receive(:format).and_return("Finished in 2.0 seconds")
@@ -16,7 +16,7 @@ describe YamlFormatter, "#print" do
16
16
  before :each do
17
17
  $stdout = IOStub.new
18
18
  @out = IOStub.new
19
- File.stub!(:open).and_return(@out)
19
+ File.stub(:open).and_return(@out)
20
20
  @formatter = YamlFormatter.new "some/file"
21
21
  end
22
22
 
@@ -48,25 +48,25 @@ end
48
48
 
49
49
  describe YamlFormatter, "#finish" do
50
50
  before :each do
51
- @tally = mock("tally").as_null_object
52
- @counter = mock("counter").as_null_object
53
- @tally.stub!(:counter).and_return(@counter)
54
- TallyAction.stub!(:new).and_return(@tally)
51
+ @tally = double("tally").as_null_object
52
+ @counter = double("counter").as_null_object
53
+ @tally.stub(:counter).and_return(@counter)
54
+ TallyAction.stub(:new).and_return(@tally)
55
55
 
56
- @timer = mock("timer").as_null_object
57
- TimerAction.stub!(:new).and_return(@timer)
56
+ @timer = double("timer").as_null_object
57
+ TimerAction.stub(:new).and_return(@timer)
58
58
 
59
59
  $stdout = IOStub.new
60
60
  context = ContextState.new "describe"
61
61
  @state = ExampleState.new(context, "it")
62
62
 
63
63
  @formatter = YamlFormatter.new
64
- @formatter.stub!(:backtrace).and_return("")
65
- MSpec.stub!(:register)
64
+ @formatter.stub(:backtrace).and_return("")
65
+ MSpec.stub(:register)
66
66
  @formatter.register
67
67
 
68
68
  exc = ExceptionState.new @state, nil, MSpecExampleError.new("broken")
69
- exc.stub!(:backtrace).and_return("path/to/some/file.rb:35:in method")
69
+ exc.stub(:backtrace).and_return("path/to/some/file.rb:35:in method")
70
70
  @formatter.exception exc
71
71
  @formatter.after @state
72
72
  end
@@ -95,7 +95,7 @@ describe MSpec, ".protect" do
95
95
  before :each do
96
96
  MSpec.clear_current
97
97
  @cs = ContextState.new "C#m"
98
- @cs.stub!(:state).and_return(@es)
98
+ @cs.stub(:state).and_return(@es)
99
99
  @cs.parent = MSpec.current
100
100
 
101
101
  @es = ExampleState.new @cs, "runs"
@@ -125,8 +125,8 @@ describe MSpec, ".protect" do
125
125
 
126
126
  it "calls all the exception actions" do
127
127
  exc = ExceptionState.new @es, "testing", ScratchPad.recorded
128
- ExceptionState.stub!(:new).and_return(exc)
129
- action = mock("exception")
128
+ ExceptionState.stub(:new).and_return(exc)
129
+ action = double("exception")
130
130
  action.should_receive(:exception).with(exc)
131
131
  MSpec.register :exception, action
132
132
  MSpec.protect("testing") { raise ScratchPad.recorded }
@@ -183,10 +183,10 @@ describe MSpec, ".actions" do
183
183
  before :each do
184
184
  MSpec.store :start, []
185
185
  ScratchPad.record []
186
- start_one = mock("one")
187
- start_one.stub!(:start).and_return { ScratchPad << :one }
188
- start_two = mock("two")
189
- start_two.stub!(:start).and_return { ScratchPad << :two }
186
+ start_one = double("one")
187
+ start_one.stub(:start).and_return { ScratchPad << :one }
188
+ start_two = double("two")
189
+ start_two.stub(:start).and_return { ScratchPad << :two }
190
190
  MSpec.register :start, start_one
191
191
  MSpec.register :start, start_two
192
192
  end
@@ -264,9 +264,9 @@ describe MSpec, ".describe" do
264
264
  before :each do
265
265
  MSpec.clear_current
266
266
  @cs = ContextState.new ""
267
- ContextState.stub!(:new).and_return(@cs)
268
- MSpec.stub!(:current).and_return(nil)
269
- MSpec.stub!(:register_current)
267
+ ContextState.stub(:new).and_return(@cs)
268
+ MSpec.stub(:current).and_return(nil)
269
+ MSpec.stub(:register_current)
270
270
  end
271
271
 
272
272
  it "creates a new ContextState for the block" do
@@ -293,22 +293,22 @@ end
293
293
 
294
294
  describe MSpec, ".process" do
295
295
  before :each do
296
- MSpec.stub!(:files)
296
+ MSpec.stub(:files)
297
297
  MSpec.store :start, []
298
298
  MSpec.store :finish, []
299
299
  end
300
300
 
301
301
  it "calls all start actions" do
302
- start = mock("start")
303
- start.stub!(:start).and_return { ScratchPad.record :start }
302
+ start = double("start")
303
+ start.stub(:start).and_return { ScratchPad.record :start }
304
304
  MSpec.register :start, start
305
305
  MSpec.process
306
306
  ScratchPad.recorded.should == :start
307
307
  end
308
308
 
309
309
  it "calls all finish actions" do
310
- finish = mock("finish")
311
- finish.stub!(:finish).and_return { ScratchPad.record :finish }
310
+ finish = double("finish")
311
+ finish.stub(:finish).and_return { ScratchPad.record :finish }
312
312
  MSpec.register :finish, finish
313
313
  MSpec.process
314
314
  ScratchPad.recorded.should == :finish
@@ -325,12 +325,12 @@ describe MSpec, ".files" do
325
325
  MSpec.store :load, []
326
326
  MSpec.store :unload, []
327
327
  MSpec.register_files [:one, :two, :three]
328
- Kernel.stub!(:load)
328
+ Kernel.stub(:load)
329
329
  end
330
330
 
331
331
  it "calls load actions before each file" do
332
- load = mock("load")
333
- load.stub!(:load).and_return { ScratchPad.record :load }
332
+ load = double("load")
333
+ load.stub(:load).and_return { ScratchPad.record :load }
334
334
  MSpec.register :load, load
335
335
  MSpec.files
336
336
  ScratchPad.recorded.should == :load
@@ -403,7 +403,7 @@ end
403
403
 
404
404
  describe MSpec, ".read_tags" do
405
405
  before :each do
406
- MSpec.stub!(:tags_file).and_return(File.dirname(__FILE__) + '/tags.txt')
406
+ MSpec.stub(:tags_file).and_return(File.dirname(__FILE__) + '/tags.txt')
407
407
  end
408
408
 
409
409
  it "returns a list of tag instances for matching tag names found" do
@@ -424,7 +424,7 @@ describe MSpec, ".read_tags" do
424
424
  f.puts @tag
425
425
  f.puts ""
426
426
  end
427
- MSpec.stub!(:tags_file).and_return(tmp("tags.txt", false))
427
+ MSpec.stub(:tags_file).and_return(tmp("tags.txt", false))
428
428
  end
429
429
 
430
430
  it "does not return a tag object for empty lines" do
@@ -435,7 +435,7 @@ end
435
435
  describe MSpec, ".write_tags" do
436
436
  before :each do
437
437
  FileUtils.cp File.dirname(__FILE__) + "/tags.txt", tmp("tags.txt", false)
438
- MSpec.stub!(:tags_file).and_return(tmp("tags.txt", false))
438
+ MSpec.stub(:tags_file).and_return(tmp("tags.txt", false))
439
439
  @tag1 = SpecTag.new "check(broken):Tag#rewrite works"
440
440
  @tag2 = SpecTag.new "broken:Tag#write_tags fails"
441
441
  end
@@ -459,8 +459,8 @@ end
459
459
 
460
460
  describe MSpec, ".write_tag" do
461
461
  before :each do
462
- FileUtils.stub!(:mkdir_p)
463
- MSpec.stub!(:tags_file).and_return(tmp("tags.txt", false))
462
+ FileUtils.stub(:mkdir_p)
463
+ MSpec.stub(:tags_file).and_return(tmp("tags.txt", false))
464
464
  @tag = SpecTag.new "fail(broken):Some#method works"
465
465
  end
466
466
 
@@ -483,7 +483,7 @@ end
483
483
  describe MSpec, ".delete_tag" do
484
484
  before :each do
485
485
  FileUtils.cp File.dirname(__FILE__) + "/tags.txt", tmp("tags.txt", false)
486
- MSpec.stub!(:tags_file).and_return(tmp("tags.txt", false))
486
+ MSpec.stub(:tags_file).and_return(tmp("tags.txt", false))
487
487
  @tag = SpecTag.new "fail(Comments don't matter):Some#method? works"
488
488
  end
489
489
 
@@ -530,7 +530,7 @@ describe MSpec, ".delete_tags" do
530
530
  before :each do
531
531
  @tags = tmp("tags.txt", false)
532
532
  FileUtils.cp File.dirname(__FILE__) + "/tags.txt", @tags
533
- MSpec.stub!(:tags_file).and_return(@tags)
533
+ MSpec.stub(:tags_file).and_return(@tags)
534
534
  end
535
535
 
536
536
  it "deletes the tag file" do